O produto usa um script que é gravado em bean shell ou JavaScript para o campo Script embutido do operador Executar script de Telnet. O script usa o objeto conn, que expõe as seguintes APIs:
void send (String str, boolean log) aciona Exceção
Esse método envia dados ao host remoto.
Define os dados a enviar ao host remoto.
Expõe ou oculta os dados enviados ao host remoto nos logs do CA Process Automation.
Para depuração, siga a interação entre o operador e o host remoto. Defina o seguinte código no arquivo <install_dir>/server/conf/log4j.xml:
<category name="com.company.c2o.servicegroup.netutils">
<priority value="DEBUG" /> </category>
Além disso, defina o arquivo de log do CA Process Automation (c2o.log) para aceitar instruções DEBUG em log4j.xml.
Quando você definir o nível de depuração, a categoria do operador Execução de comando iniciará o registro no arquivo de log do CA Process Automation (c2o.log) em nível de DEBUG. Os logs do CA Process Automation expõem todos os dados enviados ao host remoto por meio de send ou sendLine.
Verdadeiro: registra o valor de String str ao registrar em nível de DEBUG.
Falso: não registra o valor de String str.
Observação: c2o.log é o arquivo de log do CA Process Automation, mas não os logs de processos. Os operadores não gravam mensagens no log de processo.
Esse método não tem valores de retorno. O produto gera uma exceção se a API não puder gravar os dados no host remoto.
public void sendLine (String str, boolean log) aciona Exceção
Este método adiciona um caractere de nova linha aos dados e o envia para o host remoto. Para forçar o host remoto a iniciar a execução do comando enviado no parâmetro, use este método.
Este método tem os mesmos parâmetros e valores que void send (String str, boolean log) aciona Exceção.
void send (String str) aciona Exceção
Esse método é equivalente a Send (String str, verdadeiro).
void sendLine (String str) aciona Exceção
Esse método é equivalente a SendLine (String str, verdadeiro).
public boolean waitFor(String pattern, int timeout) throws Exception
Este método lê a saída do host remoto e é interrompido quando um dos seguintes resultados é gerado:
O produto armazena a saída do host remoto por cada chamada ao método waitFor em um buffer que pode ser acessado por meio do método getLastOutput(). Cada chamada a waitFor substitui o conteúdo do buffer da chamada anterior.
A próxima chamada a waitFor começa a ler a saída a partir do ponto em que a chamada anterior a waitFor interrompeu a leitura. Isso é relevante ao utilizar o método com getLastOutput.(). Por exemplo, se uma chamada a waitFor não corresponder à saída inteira de um comando, a próxima chamada poderá conter o restante da saída do comando anterior.
Importante: para não misturar a saída do comando anterior com a saída do comando atual, chame waitFor após cada chamada a sendLine.
Os operadores de script de Telnet e script SSH usam mecanismos diferentes para ler os dados do host remoto:
Os parâmetros incluem:
Define uma expressão regular para corresponder com os dados que o produto lê do host remoto. Normalmente, esse padrão corresponde a quaisquer dados até o próximo prompt (por exemplo, ".*[$]"). Como você pode fazer a correspondência dos dados de saída do comando (e recuperá-los, incluindo novas linhas até o próximo prompt), inicie o padrão com .*.
Observação: o método corresponde a todos os dados lidos (durante essa chamada a waitFor) em relação ao padrão. O operador não faz a correspondência do padrão como uma subsequência de caracteres dos dados lidos. Além disso, um ponto (. ) pode corresponder a um terminador de nova linha (pode ser usado para corresponder a dados com várias linhas).
Define o intervalo (em segundos) para ler os dados do host remoto e fazer a correspondência entre eles e o padrão.
Os itens retornados serão Booleanos:
Os dados lidos antes da expiração do tempo limite correspondem ao padrão.
Os dados lidos antes da expiração do tempo limite não correspondem ao padrão.
Observação: o método retorna um valor assim que corresponder ao padrão ou o tempo limite expirar.
O produto gera uma exceção nos seguintes casos:
public String getLastOutput()
Este método retorna o conteúdo do buffer em que a última chamada a waitFor salvou os dados lidos do host remoto. Esses dados nem sempre correspondem ao padrão de waitFor. O buffer armazena a chamada a waitFor lida mais recente, se waitFor tiver retornado verdadeiro ou falso.
Este método não contém parâmetros.
Este método não gera exceções.
|
Copyright © 2013 CA.
Todos os direitos reservados.
|
|