São Exibidas Mensagens de Erro de Classe Java ao Iniciar o Depurador
Cenário: Você está tentando iniciar o depurador em
um fluxo de mensagens, mas o depurador não inicia e vários erros de evento são
emitidos sobre as classes Java.
Explicação: A causa mais provável desse problema é que você não instalou o Rational Agent Controller. Embora o Agent Controller não seja um pré-requisito
para o WebSphere Message Broker, ele é um pré-requisito para o depurador de fluxo de mensagens.
Solução: Instale o Agent Controller.
É Exibida uma Mensagem "Aguardando Comunicação" sem Fim Quando Você Inicia
o Depurador
Cenário: Depois de clicar em Iniciar
Depuração, você obtém uma barra de progresso com um ciclo sem fim intitulada
"Aguardando Comunicação". A mensagem "sessão de depuração iniciada" não é exibida na área de janela de informações.
Explicação: Se o fluxo de mensagens tiver nós com instruções ESQL, o fluxo pode não ser implementado mesmo se as instruções estiverem corretas sintaticamente. Isso pode ocorrer,
por exemplo, devido a declarações múltiplas ou a variáveis não inicializadas (ou seja,
problemas semânticos que o analisador de sintaxe não detecta). Sempre verifique o registro de eventos do workbench para confirmar se a versão depurada de seu fluxo de mensagens foi implementada com êxito; possui o mesmo nome que o fluxo de mensagens original, com o sufixo
_debug_.
Se o fluxo de mensagens não for implementado corretamente, o depurador não pode estabelecer comunicação com o fluxo e você vê a barra de progresso interminável.
Solução: Clique em
Cancelar para
limpar e retornar a um estado válido e, em seguida, corrija os erros
e tente novamente. Como verificação, observe se o fluxo pode ser implementado sem
o depurador.
O Depurador Parece Parar
Cenário: Você está depurando um fluxo de mensagens e continua após encontrar um ponto de interrupção.
Contudo, nada parece
acontecer e depois de aproximadamente um minuto uma barra de
progresso aparece, indicando que o depurador está aguardando
comunicação.
Explicação: Há duas possibilidades.
O fluxo de mensagens pode ter encontrado uma operação
demorada, como uma grande consulta ao banco de dados, que você
simplesmente terá que aguardar.
O intermediário foi encerrado ou alguma outra condição
extraordinária ocorreu e a comunicação se perdeu.
Nesse caso, clique em
Cancelar para
parar a sessão de depuração.
A Sessão Encerra Anormalmente durante a Depuração
Cenário: Depois de depurar um fluxo de mensagens, a
sessão encerra anormalmente e você ainda tem a instância de depuração
do fluxo de mensagens (mf_debug_) implementada no grupo de execução
do intermediário. Você está preocupado porque isso vai afetar
a operação do fluxo e quer pôr o grupo de execução de volta a seu estado original.
Explicação: O fluxo de mensagens órfão deve se
comportar como o fluxo teria feito normalmente, e os nós Debug não
têm efeito sobre o processamento de mensagens. Se tiver um pequeno número de nós no fluxo de mensagens, a ação corretiva não faz nenhuma diferença aparente no fluxo, além de seu nome.
No entanto, se tiver um grande fluxo de mensagens (ou seja, mais de 15 nós ou vários subfluxos), utilize a ação corretiva descrita abaixo, pois o desempenho de processamento de mensagens pode ser afetado.
Solução: Implemente o intermediário novamente.
Uma nova implementação completa do intermediário deve substituir o fluxo órfão pelo fluxo de mensagens original.
Se isso não fizer efeito, remova o fluxo órfão
do grupo de execução, implemente e, em seguida, inclua o fluxo e
implemente para restaurar o estado original do intermediário ao que
era antes da sessão de depuração.
Uma Mensagem de Erro É Exibida Indicando que o Rational Agent Controller Não Está Instalado
Cenário: Você está utilizando o depurador do fluxo de mensagens e um erro é emitido, indicando que o Agent Controller não está instalado ou que você escolheu o nome do host ou porta errado.
O serviço Agent Controller está iniciado e o nome do host e a porta são válidos.
Solução: Feche e reabra o
workbench e tente novamente o
comando. Você também pode tentar parar e reiniciar o serviço Agent Controller.
Mecanismos do Fluxo de mensagens Não
Estão Disponíveis para Seleção
Cenário: Você abre o assistente
Conectar-se ao Mecanismo do
Fluxo de Mensagens, mas não há nenhum mecanismo do
fluxo de mensagens listado para o computador
host.
Solução: Feche o assistente, reinicie o Rational Agent Controller no computador servidor e, em seguida, abra o assistente novamente. Consulte também Conectando-se ao Mecanismo de Fluxo para Depuração.
Não É Possível Ver a Lista de Grupos de Execução
Cenário: O Rational Agent Controller está iniciado, o intermediário está em execução, mas não é possível ver a lista de grupos de execução na página Agente ao conectar ao depurador.
Solução: Inicie os serviços do Agent Controller
antes de iniciar o intermediário.
Inicie novamente o Agent Controller e tente conectar-se novamente.
Você Vê os Nomes de Grupos de Execução Errados na Página Agente
Cenário: Você vê os mesmos nomes de grupos de
execução na página Agente quando tenta conectar ao depurador.
Explicação: O Rational Agent Controller não atualizou a lista de agentes desde a última tentativa para conectar ao depurador.
Solução: Reinicie o Agent Controller para atualizar
a lista.
Erro de Alocação de Memória Compartilhada no AIX
Cenário: O Rational Agent Controller foi iniciado, o intermediário está em execução e você vê uma mensagem informando que a alocação de memória compartilhada falhou após o intermediário ser conectado ao Agent Controller.
Explicação: Esse é um problema de tempo geral que
ocorre quando o Agent Controller é conectado ao intermediário quando
o intermediário não foi completamente iniciado.
Solução: Aguarde até o intermediário ser
completamente iniciado antes de conectá-lo ao Depurador de Fluxo.
Como alternativa, defina o nível de registro no Agent Controller para
depuração ou informação; isso concede mais tempo para o intermediário
ser inicializado.
As etapas a seguir mostram como alterar o nível de registro.
Vá para o diretório IBM Agent Controller
install dir/config e abra o arquivo de configuração
serviceconfig.xml.
Altere a tag loggingLevel para depuração ou
informação. O valor padrão é aviso.
É Exibida uma Mensagem de Erro Indicando que a Sessão de Depuração não Pode
Ser Ativada
Cenário: você tenta reativar ou chamar uma nova sessão de depuração,
mas quando clica no ícone verde Depurar, uma mensagem de erro é exibida
indicando: Não é possível ativar esta sessão de depuração.
Explicação: Ao clicar no ícone Depurar, ele ativa novamente a última sessão de depuração.
Ela falhará se você não tiver criado
uma sessão de depuração anteriormente. Ele também falha se o intermediário e o grupo de execução conectados anteriormente em uma sessão de depuração não estiverem mais em execução ou tiverem sido reiniciados; a sessão não pode ser reconectada sem nova seleção do novo intermediário e instância do processo do grupo de execução.
Solução:
Feche a mensagem de erro e clique na seta drop-down imediatamente à direita do ícone Depurar.
Selecione novamente ou modifique as informações do intermediário ou do grupo de execução
na configuração de ativação de depuração anterior clicando em Depurar, no menu drop-down e selecionando a configuração de ativação de depuração anterior. Consulte o Conectando-se ao Mecanismo de Fluxo para Depuração para obter informações adicionais.
Ocorre um Tempo Limite durante a Espera de Conexão do Serviço Rational Agent Controller
Cenário: Você vê mensagens de erro indicando que o serviço Rational Agent
Controller falhou em iniciar e que o tempo limite ocorreu durante a espera de conexão do serviço Agent Controller.
Explicação: O Agent Controller pode estar utilizando a versão errada da JVM.
Solução: Assegure-se de que um JVM suportado esteja sendo utilizado. Para
determinar qual JVM está sendo utilizado, emita o comando java -version
na linha de comandos. Para obter o resultado correto, esse comando deve chamar o
arquivo executável Java especificado para uso, quando o Agent Controller
foi instalado.
O Depurador Não Pausa no Próximo Ponto de Interrupção
Cenário: O depurador de fluxo de mensagens não
pausa no próximo ponto de interrupção no fluxo de mensagens.
Solução: Execute as seguintes verificações:
Verifique se o DataFlowEngine está em execução; se não estiver, reinicie-o.
Verifique a fila de entrada. Se sua fila de entrada tiver as mensagens deixadas da vez anterior que o depurador foi utilizado, limpe-as antes de enviar uma nova mensagem.
A Mensagem Não Pára de Ser Executada em Nenhum Ponto de
Interrupção
Cenário: A mensagem não pára de ser executada em
nenhum ponto de interrupção após a conexão ao depurador.
Explicação: Pode ser um problema de sincronização ou você pode ter configurado os parâmetros errados para a sessão de depuração.
Solução: Execute as seguintes etapas.
Verifique as definições de configuração de ativação, assegurando que você especificou o Projeto de Fluxo, o Nome do Host e o Mecanismo de Fluxo corretos para a sessão de depuração.
Reinicie a sessão de depuração.
Ocorrem Problemas de Edição no Editor de Fluxo de Mensagens
Cenário: Ocorrem problemas de edição quando você está utilizando o
editor de Fluxo de Mensagens, enquanto depura um fluxo de mensagens.
Solução: Não tente editar a mensagem enquanto o
depurador de fluxo está conectado.
Para editar um fluxo de mensagens, desconecte o depurador, edite o fluxo de mensagens e, em seguida, implemente novamente o fluxo de mensagens.
A Edição do MQMD (MQ Message Descriptor) Provoca Comportamento Inesperado
no Depurador
Cenário: Você edita propriedades do descritor MQMD da mensagem
no editor de Conjunto de Mensagens, mas isso causa comportamento inesperado no depurador.
Explicação: Se você editar o conteúdo do descritor MQMD,
esses campos aceitam um certo intervalo de valores. É preciso conhecer esses valores
antes de editar as propriedades. A menos que você defina
explicitamente o valor desses campos, eles assumem valores padrões e
certos campos podem não ter sido especificados na mensagem. Os valores dos campos que não estão configurados explicitamente na mensagem são valores padrão; não altere os mesmos, a menos que você esteja ciente de sua importância ou do possível intervalo de valores.
Não é Possível Ver o Conteúdo da Mensagem ao Depurar o Fluxo
de Mensagens
Cenário: Você está utilizando o depurador de fluxo
de mensagens e pode ver a mensagem passando através do fluxo de
mensagens, mas não consegue ver o conteúdo da mensagem.
Solução: Abra a visualização Mensagem de Depuração do Fluxo, clicando em Janela > Mostrar Visualização > Outro > Fluxo de Mensagens > Mensagem de Depuração do Fluxo e, em seguida, OK.
Não É Possível Ver os Nomes dos Fluxos de Mensagens na Visualização de Depuração de
Cenário: Você não consegue ver os nomes dos fluxos de mensagens implementados
na visualização Depuração de , depois de conectar o depurador
ao grupo de execução.
Solução:
Pare o intermediário no qual o grupo de execução está executando.
Reinicie o Rational Agent Controller que está em execução no mesmo computador que o intermediário.
Iniciar novamente o intermediário.
Não É Possível Ver os Nomes dos Fluxos de Mensagens na Visualização de Depuração de
Cenário: Você não consegue ver os nomes dos fluxos de mensagens implementados
na visualização Depuração de , depois de conectar-se
ao grupo de execução.
Explicação: Pode ser um problema de sincronização.
Solução: Aguarde até o intermediário ter iniciado completamente e tente conectar ao depurador novamente ou reinicie o Rational Agent Controller que está em execução no mesmo computador que o intermediário e, em seguida, reinicie o intermediário.
Existe um Ponto de Exclamação acima de um Nó Durante a Depuração
Cenário: No Editor de Fluxo de Mensagens, é exibido um ponto de exclamação
(!) acima de um nó durante a depuração.
Explicação: Ocorreu uma exceção no nó durante a
depuração.
Solução: Examine a Lista de Exceções na visualização Variáveis
de Perspectiva de Depuração para saber o tipo de
erro ocorrido.
O PutTime Relatado pelo WebSphere MQ no z/OS e Outros Horários ou Time Stamps Estão Inconsistentes
Cenário: O PutTime relatado pelo WebSphere MQ no z/OS e outros horários ou time stamps estão inconsistentes.
Uma diferença de aproximadamente 20 segundos é detectada em:
rastreios (incluindo a obtida do nó Trace)
o time stamp MQPUTTIME no cabeçalho MQMD da mensagem
time stamps obtidos do ESQL (por exemplo, em um nó Compute)
Explicação: WebSphere Message Broker relata o horário utilizando UTC (Universal Time Coordinated), que não considera os segundos saltados. No entanto, no z/OS, o
putTime da mensagem que é relatado pelo WebSphere MQ no cabeçalho MQMD de uma mensagem considera os segundos saltados, utilizando o valor especificado para o número de segundos saltados no campo CVT.
Essa inconsistência pode causar:
problemas ao depurar
problemas com fluxos de mensagens se você utilizar time stamps para controlar o fluxo de mensagens
informações incorretas
Solução: Configure o campo CVT de forma que concorde com os segundos saltados de UTC. Como alternativa, inclua um deslocamento para ajustar a leitura de time stamp do z/OS. Por exemplo, inclua 20 segundos ao tentar obter o CURRENT_TIME em
ESQL.
Não É Possível Alterar um Fluxo de Mensagens Após a Depuração
Cenário: Você estava depurando, mas agora seu fluxo
de mensagens parece estar travado. Quando você coloca uma nova mensagem, nada acontece.
Explicação: Isso pode ocorrer porque uma mensagem
foi removida, mas você não definiu a propriedade
Nome da recolocação em fila de
backout da fila de entrada.
Solução: Defina a propriedade
Nome da recolocação em fila de
backout para um nome de fila válido (como o nome da fila de
entrada em si) e seu fluxo destravará.
Você Reimplementou um Fluxo de Mensagens Depurado, Mas a Implementação Trava
Cenário: Você encontrou problemas em seu fluxo de
mensagens utilizando o depurador. Você alterou o fluxo de mensagens e, em seguida, o reimplementou,
mas agora a implementação está travada.
Solução: Quando você reimplementar o fluxo para um grupo de
execução, certifique-se de que o grupo de execução não esteja ainda conectado ao depurador.
A Mensagem Não Pára de Ser Executada em Nenhum Ponto de
Interrupção
Cenário: O processamento de mensagens continua quando um ponto de interrupção é localizado.
Explicação: Pode ser um problema de sincronização ou você pode ter configurado os parâmetros errados para a sessão de depuração.
Solução: Verifique sua definição de configuração de ativação. Assegure que você tenha especificado o Projeto de Fluxo, o Nome do Host e o Mecanismo de Fluxo corretos para a sessão de depuração.
Reinicie a sessão de depuração.
Erros São Gerados ao Copiar um Mapa de Mensagens para um Projeto de Fluxo de Mensagens
Cenário: Você copiou um mapa de mensagens para um projeto de fluxo de mensagens e apareceram erros na lista de tarefas.
Explicação: O projeto do fluxo de mensagens não tinha as referências corretas configuradas antes de copiar o mapeamento de mensagem.
Solução: Esses erros permanecerão na lista de tarefas, mesmo se você reconfigurar as referências de projeto imediatamente após a cópia; você deve realizar um build limpo do projeto de fluxo de mensagens.