WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

Die Baumstruktur einer logischen Nachricht in der Traceausgabe anzeigen

Wenn Sie die Struktur der Baumstruktur einer logischen Nachricht an irgendeinem Punkt im Nachrichtenfluss anzeigen möchten, fügen Sie einen Trace-Knoten ein und schreiben Sie einige oder alle Nachrichtenbereiche (einschließlich der Header und allen vier Nachrichtenbaumstrukturen) in die Zieladresse der Traceausgabe.

Die Traceausgabe kann hilfreich sein, wenn Sie vor und nach der Änderung einer Nachricht durch einen Knoten oder bei ihrem Erhalt im Empfangsknoten den Inhalt einer Nachricht prüfen oder aufzeichnen möchten. Wenn Sie beispielsweise einen Compute-Knoten einfügen, der in der Baumstruktur der lokalen Umgebung eine Zieladressenliste erstellt, können Sie die Struktur, die von ihm als Teil einer Protokollaufzeichnung erstellt wurde, aufzeichnen oder prüfen, ob der Compute-Knoten erwartungsgemäß funktioniert.

UNIX platformUnter UNIX ist die Länge der Einträge im Systemprotokoll beschränkt. In das Systemprotokoll gesendete Nachrichten werden durch das Zeilenvorschubzeichen abgeschnitten. Um eine große Datenmenge in einem Protokoll unter UNIX aufzuzeichnen, müssen Sie die Eigenschaft Zieladresse für den Trace-Knoten auf Datei oder Benutzertrace statt auf Lokales Fehlerprotokoll setzen.

  1. Wechseln Sie in die Ansicht 'Brokeranwendungsentwicklung'.
  2. Öffnen Sie den Nachrichtenfluss, für den Nachrichten angezeigt werden sollen. Öffnen Sie einen vorhandenen Nachrichtenfluss oder erstellen Sie einen neuen.
  3. Fügen Sie an allen Stellen, an denen Sie einen Teil der oder die gesamte Nachrichtenbaumstruktur anzeigen möchten, einen Trace-Knoten ein. Sie können so viele Trace-Knoten einschließen, wie Sie möchten. Jeder zusätzliche Knoten kann sich jedoch auf die Leistung der Nachrichtenflussverarbeitung auswirken.
  4. Legen Sie in den Eigenschaften des Trace-Knotens fest, dass für die anzuzeigende Nachricht oder einen Teil davon ein Trace durchgeführt werden soll. Geben Sie die Nachrichtenbereiche mithilfe von ESQL-Feldreferenzen an. Weiter unten in diesem Abschnitt finden Sie mehrere Beispiele.
  5. Wenn Sie einen Trace-Knoten hinzugefügt haben, um ein bestimmtes Verhalten Ihres Nachrichtenflusses zu untersuchen, und sie jetzt keine Bedenken mehr haben oder Sie sich vergewissert haben, dass der Nachrichtenfluss ordnungsgemäß funktioniert, entfernen Sie den/die Trace-Knoten und setzen Sie den Nachrichtenfluss erneut ein.

Angenommen, Sie haben einen Nachrichtenfluss konfiguriert, der in einer WebSphere MQ-Warteschlange in einem MQInput-Knoten eine XML-Nachricht empfängt. Die Eingabenachricht enthält einen MQRFH2-Header. Die Nachricht hat folgenden Inhalt:

<Trade type='buy'
 Company='IBM'
 Price='200.20'
 Date='2000-01-01'
 Quantity='1000'/>

Sie können einen Trace-Knoten einfügen und konfigurieren, um eine Ausgabe zu generieren, die eine oder mehrere Baumstruktur(en) anzeigt, die auf Basis dieser Nachricht erstellt wurde(n): den Hauptteil der Nachricht sowie die Baumstrukturen für die Umgebung, lokale Umgebung und Ausnahmebedingungen. Wenn Sie sich für die Aufzeichnung des Inhalts eines Nachrichtenhauptteils entscheiden, werden die Baumstruktur für Eigenschaften und der Inhalt aller Header (in diesem Beispiel mindestens ein MQMD- und ein MQRFH2-Header) aufgenommen. Bei der Festlegung der Eigenschaft Muster des Trace-Knotens geben Sie an, was aufgezeichnet werden soll. Sie können zur Definition dieses Musters die meisten Korrelationsnamen verwenden (die Namen, die sich speziell auf den Compute-Knoten beziehen, können nicht verwendet werden).

Hauptteil der Nachricht
Wenn der Trace-Knoten die Baumstruktur der Nachricht einschließlich der Eigenschaften und allen Headern schreiben soll, setzen Sie Muster auf $Root. Wenn nur die Nachrichtendaten geschrieben werden sollen, setzen Sie Muster auf ${Body}.

Die Traceausgabe, die für die Nachrichtenbaumstruktur der zuvor genannten Nachricht generiert wurde, sieht bei der Festlegung von $Root für Muster in etwa wie folgt aus:

Root       Properties
         CreationTime=GMTTIMESTAMP '1999-11-24 13:10:00'          (GMT-Zeitmarkenfeld)
 
  ... sowie weitere Felder ...
 
      MQMD
         PutDate=DATE '19991124'                                  (Datumsfeld)
 
         PutTime=GMTTIME '131000'                                 (GMTTIME-Feld)
 
  ... sowie weitere Felder ...
 
      MQRFH
          mcd
          msd='xml'                                              (Zeichenfolgefeld)
 
         .. sowie weitere Felder ...
 
      XML          Trade
          type='buy'                                             (Zeichenfolgefeld)
 
         Company='IBM'                                              (Zeichenfolgefeld)
 
         Price='200'                                             (Zeichenfolgefeld)
 
         Date='2000-01-01'                                              (Zeichenfolgefeld)
 
         Quantity='1000'                                             (Zeichenfolgefeld)
Umgebung
Wenn Sie für die Daten in der Umgebungsbaumstruktur (Environment) einen Trace durchführen möchten, setzen Sie Muster auf ${Environment}. Durch diese Einstellung wird eine ähnliche Ausgabe wie im folgenden Beispiel generiert:
 (0x1000000)Environment = (
      (0x1000000)Variables = (
        (0x1000000)MyVariable1 = (
          (0x2000000) = '3'
        )
        (0x1000000)MyVariable2 = (
          (0x2000000) = 'Hello'
        )
      )
  ) 

Wenn Sie für bestimmte Variablen im Variablenordner der Umgebungsbaumstruktur einen Trace durchführen möchten, können Sie ein spezifischeres Muster verwenden, z. B. ${Environment.Variables.MyVariable1}. Durch diese Einstellung wird nur der Wert zurückgegeben (z. B. lediglich der Wert 3).

LocalEnvironment
Wenn Sie für die Daten in der Baumstruktur der lokalen Umgebung einen Trace durchführen möchten, setzen Sie Muster auf ${LocalEnvironment}. Es wird eine ähnliche Ausgabe wie im folgenden Beispiel generiert, in dem eine Zieladressenliste angezeigt wird, die innerhalb der Baumstruktur für die lokale Umgebung erstellt wurde:
(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'
      )
    )
  )      

Das nachfolgende Beispiel enthält den Ordner 'WrittenDestination'. Dieses Beispiel stellt einen Trace dar, der von einem Trace-Knoten geschrieben wurde, der nach einem MQOutput-Knoten eingefügt wurde. Dabei ist das Ausgangsterminal des MQOutput-Knotens mit einer Folge von Knoten verbunden, die den Trace-Knoten enthält. Wird ein Ausgangsterminal verbunden, wird die Baumstruktur der lokalen Umgebung durch Informationen zu den Aktionen erweitert, die vom Sendeknoten ausgeführt wurden.

(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'
      )
    )
  )
)
Ausnahmeliste
Wenn Sie für die Daten in der Ausnahmeliste (ExceptionList) einen Trace durchführen möchten, setzen Sie Muster auf ${ExceptionList}.

Wenn Sie den Fluss-Debugger verwenden, können Sie auch die Nachrichtenstruktur im Nachrichtenfluss sowie sonstige Informationen anzeigen.

Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:19:59


TaskthemaTaskthema | Version 8.0.0.5 | ac16810_