Vorbereitungen:
Um diese Task abzuschließen, müssen Sie zuerst folgende Tasks ausführen:
Bevor Sie in Ihrem Nachrichtenfluss Fehler beheben können, müssen Sie den Debugger an die Fluss-Steuerkomponente (Ausführungsgruppe) anhängen, in der sich Ihr Nachrichtenfluss befindet, und dann die Debugsitzung starten. Wahlweise können Sie den Debugger auch an mehrere Nachrichtenflussengines anhängen, die auf demselben bzw. auf verschiedenen Hostcomputern ausgeführt werden, und in ihren Nachrichtenflüssen dann gleichzeitig Fehler beheben.
Sie den Debugger nicht für Flüsse ausführen, die Sie in eine 64-Bit-Ausführungsgruppe implementiert haben. Der Fluss-Debugger unterstützt nur 32-Bit-Ausführungsgruppen.
Führen Sie folgende Schritte aus, um den Debugger an die Nachrichtenflussengine anzuhängen:
- Wechseln Sie zur Ansicht 'Brokerverwaltung'. Achten Sie auf den Namen des Nachrichtenflusses im Teilfenster Domänen.
- Öffnen Sie den Nachrichtenfluss, für den Sie den Debugger ausführen möchten, im Nachrichtenflusseditor, indem Sie doppelt auf den Namen im Teilfenster Brokerverwaltungsnavigator klicken.
- Fügen Sie einen Unterbrechungspunkt zu einer Verbindung hinzu, die aus dem Empfangsknoten des Nachrichtenflusses hinausführt. Durch das Hinzufügen dieses Unterbrechungspunkts stellen Sie sicher, dass der Nachrichtenfluss nicht abgeschlossen wird, bevor Sie mit dem Debug beginnen können.
Der Unterbrechungspunkt wird als
angezeigt. (Weitere Hinweise zum Hinzufügen eines Unterbrechungspunkts finden Sie unter Im Debugger mit Unterbrechungspunkten arbeiten).
- Wechseln Sie zur Ansicht 'Debug'.
- Klicken Sie in der Symbolleiste auf den Abwärtspfeil auf dem Symbol
Debug
, und wählen Sie Debug aus, um den
Debugassistenten (Konfigurationen erstellen, verwalten und
ausführen) aufzurufen. Tipp: Sie erstellen eine Debug-Startkonfiguration. Falls Sie bereits eine erstellt haben, können Sie sie erneut starten, indem Sie direkt auf das
Debug-Symbol

klicken.
Dieser Vorgang löst einen Fehler aus, wenn eine der folgenden Bedingungen zutrifft:
- Sie haben keine Debug-Startkonfiguration erstellt.
- Der Broker und die Ausführungsgruppe, die Sie vorher angehängt haben, sind nicht mehr aktiv.
- Der Broker und die Ausführungsgruppe wurden neu gestartet und haben aus diesem Grund eine neue Prozess-ID (s. unten).
- Klicken Sie in der Liste der Konfigurationen auf Nachrichtenbroker - Fehlerbehebung und anschließend auf die Schaltfläche Neu. Daraufhin werden mehrere Registerkarten angezeigt. Die erste Registerkarte heißt Verbinden.
Tipp: Die Schaltfläche 'Debug' kann erst aktiviert werden, wenn Sie die Felder in der Anzeige Verbinden ausgefüllt haben. Danach können Sie die Felder in den anderen Anzeigen ausfüllen oder direkt auf Debug klicken.
Im Assistenten werden folgende Fenster angezeigt: - Verbinden: In diesem Fenster können Sie eine Verbindung über den Rational Agent Controller zur Nachrichtenflussengine herstellen. Sie können die Schaltfläche Debug zum Starten einer Debugsitzung erst dann aktivieren, wenn Sie alle Felder in dieser Anzeige ausgefüllt haben.
- Portnummer des Agentencontrollers
- Geben Sie die zu verwendende Portnummer ein.
- Flussprojekt
- Wählen Sie Ihr Flussprojekt aus.
- HostName
- Wählen Sie den Hostcomputer aus, auf dem die Nachrichtenflussengine ausgeführt wird. Wenn der Host nicht aufgelistet ist, geben Sie den Hostnamen bzw. die IP-Adresse des Hostcomputers im Feld Hostname an.
- Nachrichtenflussengine
- Wählen Sie den Broker und die Nachrichtenflussengine aus, die Sie debuggen möchten. Wenn Sie auf die Schaltfläche Durchsuchen klicken, öffnet sich ein Listenfeld, in dem jede Nachrichtenflussengine als Prozessnummer gefolgt vom Namen des Brokers und der Ausführungsgruppe (durch einen Doppelpunkt getrennt) angezeigt wird. Beispiel:
Prozess-ID Name der Engine
--------- ---------------
5984 WMBV6BR:default
Wenn die Nachrichtenflussengine nicht im Listenfeld aufgeführt wird, klicken Sie auf Aktualisieren, um das aktualisierte Listenfeld mit den Namen aller Nachrichtenflussengines anzuzeigen, die zurzeit auf dem Hostcomputer implementiert und verfügbar sind. (Sollte die Nachrichtenflussengine noch immer nicht im Listenfeld angezeigt werden, versuchen Sie, den RAC auf dem Hostcomputer neu zu starten.) Sie haben nun die Möglichkeit, zu jeder Ausführungsgruppe, die auf dem Zielhost ausgeführt wird, eine Verbindung herzustellen.
Sie können diesen Vorgang auch für Ausführungsgruppen ausführen, für die keine Flüsse implementiert sind.
Tipp: Die Prozessnummer ist die Windows-
PID, die im
Task-Manager auf der Seite
Prozesse aufgeführt ist.
Beim Implementieren laut Beschreibung in
Publish/Subscribe-Topologie implementieren wurde die PID im Ereignisprotokoll erfasst.
Klicken Sie entweder auf Debug, um mit dem nächsten Schritt fortzufahren, oder füllen Sie die Felder in den anderen Anzeigen wie folgt aus:
- Einstellung für Java-Fehlerbehebung: Verwenden Sie diese Anzeige, wenn Sie einen Java-Plug-in-Knoten oder einen Java-Rechenknoten debuggen möchten.
Beim Java-Port handelt es sich um die Portnummer, die Sie für die Broker-JVM angegeben haben.
Wenn Sie keinen Port angeben, wird der Java-Debug inaktiviert.
Tipp: - JVM-Debug-Port für den Broker einstellen
- Um ein Debugging für einen JavaCompute- oder einen benutzerdefinierten Java-Knoten durchzuführen, muss die JVM des Brokers mit einer Debug-Portnummer konfiguriert sein. Sie richten diesen Wert mit folgendem Befehl ein (in einer Zeile):
mqsichangeproperties <Brokername> -e <Ausführungsgruppenname>
-o ComIbmJVMManager -n jvmDebugPort -v <Portnummer>
Nach Beendigung dieses Befehls müssen Sie den Broker neu starten.
- Quelle: Diese Anzeige zeigt dem Debugger an, wo er während des Debugs nach den Fluss-, Zuordnungs-, ESQL- oder Java-Quelldateien suchen soll.
Beim Suchpfad kann es sich um den Namen eines Eclipse-Projekts, einen externen Ordner oder eine komprimierte Datei (ZIP-Datei) handeln.
Die Angabe mehrerer Speicherpositionen ist möglich, jedoch sucht der Debugger zuerst in dem Nachrichtenflussprojekt, das Sie in der Anzeige Verbinden angegeben haben.
- Allgemein: Diese Anzeige wird nicht direkt vom Fluss-Debugger verwendet. Dort festgelegte Optionen sind jedoch wirksam.
Weitere Informationen finden Sie im Abschnitt Workbench User Guide.
- Klicken Sie auf die Schaltfläche Debug. In der Ansicht 'Debug' werden der Name des ausgewählten Hostcomputers und der Name der Nachrichtenflussengine angezeigt.
- Wenn die nächste Nachricht den Nachrichtenfluss erreicht und am Unterbrechungspunkt
ankommt, wird der Fluss angehalten, und das Symbol des Unterbrechungspunkts ändert sich
in
. Sie können nun mit dem
Debug beginnen.
- Klicken Sie in der Ansicht 'Debug' doppelt auf den Nachrichtenfluss, für den Sie den Debugger ausführen möchten. Der Nachrichtenfluss wird im Nachrichtenflusseditor geöffnet. Sie können nun weitere Unterbrechungspunkte hinzufügen, damit beginnen, den Fluss von Unterbrechungspunkt zu Unterbrechungspunkt durchzugehen usw.
Tipp: Der Debugger kann von einer einzelnen Workbench aus mit mehreren Ausführungsgruppen verbunden werden. So kann der Debugger für mehrere Nachrichtenflüsse in verschiedenen Ausführungsgruppen (und damit für mehrere Nachrichten) gleichzeitig ausgeführt werden. Für einen Nachrichtenfluss, der nur in einer Ausführungsgruppe implementiert ist, kann der Debugger jedoch immer nur von einem Benutzer zur Zeit ausgeführt werden. D. h., wenn Sie Ihren Debugger daran anhängen, kann kein anderer Benutzer gleichzeitig einen Debugger anhängen.

Der bei Version 6.0 zur Verfügung gestellte Fluss-Debugger kann Debugs für Laufzeitbroker früherer Versionen ausführen.
Sie wählen Sie die Version des Brokers aus, den Sie debuggen möchten, indem Sie die entsprechende Option in der Anzeige Auswahl der Steuerkomponente des Debug-Assistenten wie zuvor beschrieben auswählen.
Ausführliche Informationen dazu, welche Version des
Rational Agent Controller auf den einzelnen Brokerplattformen installiert werden muss, finden Sie unter Rational Agent Controller installieren.
Nachdem Sie diese Task beendet haben, können Sie mit einer der folgenden Tasks fortfahren:
