Sie können möglicher Probleme mit Knoten prüfen, die den JMS-Transport verwenden.
Verwenden Sie zuerst das Aktivitätenprotokoll zur Diagnose eines Problems, wenn in einem JMS-Nachrichtenfluss etwas Unerwartetes geschieht. Das Aktivitätenprotokoll enthält die jüngsten Aktivitäten in Ihren Nachrichtenflüssen und den zugeordneten externen Ressourcen und zeigt in einer Art Übersicht alle Probleme an, die bei Ihren JMS-Ressourcen auftreten. Im Aktivitätenprotokoll erhalten Sie auch Fehlerinformationen.
Wenn es sich in einem Fall bei der zugrunde liegenden Fehlerursache um eine JMS-Ausnahmebedingung handelt, die vom JMS-Provider ausgegeben wurde, finden Sie in der BIP-Ereignisnachricht des Brokers die Textnachricht der JMS-Ausnahmebedingung, die Sie bei der Fehlerdiagnose unterstützt.
Wenn eine Nachricht nicht vom JMS-Empfangsknoten verarbeitet werden kann oder als Teil einer XA-koordinierten Transaktion rückgängig gemacht wurde, wird die Nachricht auf das ursprüngliche Ziel zurückgesetzt. In diesem Fall wird die Nachricht dem Empfangsknoten erneut zugestellt.
Eigenschaft | Beschreibung |
---|---|
Rücksetzziel | Diese Eigenschaft gibt eine JMS-Zieladresse an, an die zurückgesetzte Nachrichten geleitet werden, wenn die vom JMS-Provider festgelegte JMS-Nachrichteneigenschaft JMSX_DeliveryCount den Rücksetzschwellenwert überschreitet. Die JMS-Zieladresse muss auf das vom Knoten verwendete Nachrichtenmodell anwendbar sein; wenn ein Subskriptionsthema beispielsweise auf dem Knoten konfiguriert wurde, muss die JMS-Zieladresse ebenfalls ein Thema sein. |
Rücksetzschwellenwert | Diese Eigenschaft gibt den ganzzahligen Wert an, über den eine Nachricht gesteuert wird, die an das Rücksetzziel gesendet wird. Der Schwellenwert 3 gibt Folgendes an: Wenn der Empfangsknoten eine Nachricht empfängt, deren Wert der Eigenschaft JMSX_DeliveryCount 3 überschreitet, wird die Nachricht an das Rücksetzziel gesendet und aus dem Quellenziel entfernt. Weitere Informationen hierzu finden Sie unter Eigenschaft 'Rücksetzschwellenwert' konfigurieren. |
Dieses Problem gilt nicht für z/OS.
Zusätzlich zum Broker-Service-Trace wird ein weiteres Traceprotokoll zur Diagnose von Problemen bereitgestellt, die auftreten können, wenn ein Knoten, der den JMS-Transport nutzt, an einer XA-koordinierten Nachrichtenflusstransaktion teilnimmt. Das heißt, dass für mindestens einen JMS-Knoten im Nachrichtenfluss die Eigenschaft Transaktionsmodus auf Ja gesetzt ist und die Nachrichtenflusseigenschaft Koordinierte Transaktion auf Ja gesetzt ist.
XAJMS_TRACEFILE = c:\JMSSwitchLog
Im vorherigen Beispiel wird eine Datei mit dem Namen JMSSwitchLog2596.txt erstellt, wobei '2596' die Prozess-ID für den Startvorgang des WS-Managers ist.
Diese Tracedateien müssen nicht zusätzlich formatiert werden.
Problembeschreibung: Der JMS-Knoten kann die Ausgangskontextfactory oder ein verwaltetes JNDI-Objekt (z. B. die Verbindungsfactory oder JMS-Zieladresse) nicht abrufen, und es wird die Fehlernachricht BIP4640 ausgegeben.
mqsireportproperties MB8BROKER -c JMSProviders -o JMSProvider –r
Problembeschreibung: Ein JMS-Knoten kann keine Verbindung zu einem JMS-Provider erstellen und es wird die Fehlernachricht BIP4648 ausgegeben.
Problembeschreibung: Ein JMS-Knoten kann keine JMS-Zieladresse aufrufen und es wird die Fehlernachricht BIP4642 ausgegeben.
Problembeschreibung: Nach einem Verbindungsfehler oder dem Neustart des JMS-Providers versucht ein JMS-Empfangsknoten nicht, erneut eine Verbindung zum JMS-Provider herzustellen.
Korrekturmaßnahme: Wenn der JMS-Provider nicht mit einem traditionellen Abfragemodell, sondern mit einem auf dem JMS-Client beruhenden Modell implementiert wird, kann es sein, dass er keine Ausnahmebedingung auslöst, wenn bei einer Brokerverbindung 'receive()' aufgerufen wird. Sie können dieses Problem lösen, indem Sie die Eigenschaft 'jmsAsyncExceptionHandling' des konfigurierbaren JMSProviders-Service für diesen JMS-Provider auf 'true' setzen.