Para visualizar a estrutura da árvore de mensagens lógica em qualquer ponto no fluxo de mensagens, inclua um nó Trace e grave algumas ou todas as mensagens (incluindo cabeçalhos e todas as quatro árvores de mensagens) no destino de saída de rastreio.
Você pode achar o rastreio útil para verificar ou registrar o conteúdo de uma mensagem antes e depois de ela ter sido alterada por um nó, ou em seu recebimento pelo nó de entrada. Por exemplo, se incluir um nó Compute que constrói uma lista de destino na árvore ambiente local, talvez você queira um registro da estrutura criada como parte de uma trilha de auditoria, ou verificar se o nó Compute está funcionando conforme o esperado.
No UNIX, as entradas syslog são restritas em comprimento e as mensagens
enviadas para o syslog são truncadas pelo caractere de nova linha. Para registrar uma
grande quantidade de dados em um log no UNIX,
configure a propriedade Destino no
nó Trace para Arquivo ou Rastreio de Usuário em vez de Log de Erros Local.
Suponha que você tenha configurado um fluxo de mensagens que recebe uma mensagem XML em uma fila do WebSphere MQ em um nó MQInput. A mensagem de entrada inclui um cabeçalho MQRFH2. A mensagem tem o seguinte conteúdo:
<Trade type='buy'
Company='IBM'
Price='200.20'
Date='2000-01-01'
Quantity='1000'/>
É possível incluir e configurar um nó Trace para produzir saída que mostra uma ou mais das árvores criadas a partir desta mensagem: o corpo da mensagem, as árvores ambiente, ambiente local e exceção. Se você escolher por registrar o conteúdo do corpo da mensagem, a árvore Propriedades e o conteúdo de todos os cabeçalhos (neste exemplo, pelo menos um MQMD e um MQRFH2) serão incluídos. Você especifica que deseja ser registrado quando definir a propriedade Padrão do nó Trace. Você pode utilizar a maioria dos nomes de correlação para definir esse padrão (você não pode utilizar esses nomes que são específicos para o nó Compute).
A saída de rastreio gerada para a árvore de mensagens da mensagem precedente com Padrão configurado como $Root seria semelhante ao seguinte exemplo:
Root
Properties
CreationTime=GMTTIMESTAMP '1999-11-24 13:10:00' (um campo de timestamp GMT)
... e outros campos ...
MQMD
PutDate=DATE '19991124' (um campo de data)
PutTime=GMTTIME '131000' (um campo GMTTIME)
... e outros campos ...
MQRFH
mcd
msd='xml' (um campo de cadeia de caracteres)
.. e outros campos ...
XML
Trade
type='buy' (um campo de cadeia de caracteres)
Company='IBM' (um campo de cadeia de caracteres)
Price='200' (um campo de cadeia de caracteres)
Date='2000-01-01' (um campo de cadeia de caracteres)
Quantity='1000' (um campo de cadeia de caracteres)
(0x1000000)Environment = (
(0x1000000)Variables = (
(0x1000000)MyVariable1 = (
(0x2000000) = '3'
)
(0x1000000)MyVariable2 = (
(0x2000000) = 'Hello'
)
)
)
Para rastrear determinadas variáveis na pasta de variáveis da árvore de ambientes, você pode utilizar um padrão mais específico, por exemplo ${Environment.Variables.MyVariable1} . Essa configuração retorna o valor apenas (por exemplo, ela retorna apenas o valor 3).
(0x1000000)Destination = (
(0x1000000)MQ = (
(0x1000000)DestinationData = (
(0x3000000)queuename = 'MQOUT'
)
)
(0x1000000)MQDestinationList = (
(0x1000000)DestinationData = (
(0x3000000)queuename = 'OLDMQOUT'
)
)
(0x1000000)RouterList = (
(0x1000000)DestinationData = (
(0x3000000)labelname = 'continue'
)
(0x1000000)DestinationData = (
(0x3000000)labelname = 'custdetails'
)
(0x1000000)DestinationData = (
(0x3000000)labelname = 'trade'
)
)
)
Outro exemplo, mostrado aqui, inclui uma pasta WrittenDestination. Esse exemplo representa um rastreio que foi gravado por um nó Trace que é incluído depois de um nó MQOutput, onde o terminal Saída do nó MQOutput está conectado a uma seqüência de nós que incluem o nó Trace. Quando um terminal Out estiver conectado, o ambiente local será alterado com informações sobre a ação executada pelo nó de saída.
(0x1000000)Destination = (
(0x1000000)MQ = (
(0x1000000)DestinationData = (
(0x3000000)queuename = 'MQOUT'
)
)
(0x1000000)WrittenDestination = (
(0x1000000)MQ = (
(0x1000000)DestinationData = (
(0x3000000)queueName = 'MQOUT'
(0x3000000)queueManagerName = 'MQSI_SAMPLE_QM'
(0x3000000)replyIdentfier =
X'414d51204d5153495f53414d504c455f1f442f3b12600100'
(0x3000000)msgId =
X'414d51204d5153495f53414d504c455f1f442f3b12600100'
(0x3000000)correlId =
X'000000000000000000000000000000000000000000000000'
(0x03000000):GroupId = X'414d512042524f4b45523220202020203f59934620001803'
)
)
)
)
Também é possível visualizar a estrutura da mensagem no fluxo de mensagens, e outras informações, ao utilizar o depurador de fluxo.