strmqtrc
Mit diesem Befehl wird die Tracefunktion auf einer angegebenen Detailebene aktiviert oder die aktuelle Tracingebene gemeldet.
Zweck
Mit dem Befehl strmqtrc wird die Tracefunktion aktiviert.
Sie müssen den Befehl strmqtrc aus der Installation des Warteschlangenmanagers ausführen, mit dem Sie arbeiten. Um herauszufinden, welcher Installation ein Warteschlangenmanager zugeordnet ist, verwenden Sie den Befehl dspmq -o installation. Dies gilt nicht für ein Clientprodukt (z. B. HP Integrity NonStop Server ) da es keine Warteschlangenmanager gibt, von denen direkte Ausgabe angefordert werden kann.
Syntax
Beschreibung
- Einen oder mehrere Warteschlangenmanager
- Detailebene der Tracefunktion
- Mindestens ein IBM MQ -Prozess. Die Prozesse können entweder Teil der IBM MQ -Produkt-oder Kundenanwendungen sein, die die IBM MQ -API verwenden
- Bestimmte Threads in Kundenanwendungen, entweder nach IBM MQ -Threadnummer oder nach Betriebssystemthreadnummer
- Ereignisse Dabei kann es sich entweder um den Eingang oder den Ausgang interner IBM MQ -Funktionen oder um das Auftreten einer Erfassung von Fehlerdaten beim ersten Auftreten (First Failure Data Capture, FDC) handeln.
Für den IBM MQ -Client unter HP Integrity NonStop Servermüssen Sie Ihre Tracebefehle an bestimmte Prozessoren übertragen. Wenn Ihr Client beispielsweise auf Prozessor 2 ausgeführt wird und sich Ihre Shell auf Prozessor 1 befindet, wird der Client beim Einleiten des Trace mit strmqtrc <options> nicht verfolgt. In diesem Fall wäre run -cpu=2 strmqtrc erforderlich.
Optionale Parameter
- -m
QMgrName - Der Name des Warteschlangenmanagers, auf den der Trace angewendet werden soll. Dieser Parameter ist nur bei Serverprodukten gültig.
Die folgenden Platzhalterzeichen sind zulässig: Asterisk (*), Ersetzen von Null oder mehr Zeichen und Fragezeichen (?), wobei alle einzelnen Zeichen ersetzt werden. In Befehlsumgebungen, wie z. B. der UNIX-Shell, in der die Zeichen Asterisk (*) und Fragezeichen (?) eine besondere Bedeutung haben, müssen Sie entweder dem Platzhalterzeichen entziehen oder es in Anführungszeichen setzen, um zu verhindern, dass die Befehlsumgebung mit dem Platzhalterzeichen arbeitet.
- -e
- Mit dieser Option wird Tracing aller Prozesse in einem frühen Stadium angefordert. Dadurch lässt sich die Erstellung oder der Start eines Warteschlangenmanagers verfolgen. Wenn Sie dieses Flag angeben, verfolgt jeder Prozess, der zu einer Komponente eines Warteschlangenmanagers gehört, dessen Verarbeitung in einem frühen Stadium. Standardmäßig wird Tracing in einem frühen Stadium nicht ausgeführt.
Führen Sie mit folgendem Befehl einen Trace für einen Client durch:
strmqtrc -eSie können das Flag -e nicht mit dem Flag -m, -i, -p, -c oder -b verwenden. Wenn Sie versuchen, das Flag -e mit dem Flag -m, -i, -p, -c oder -b zu verwenden, wird eine Fehlernachricht ausgegeben.
- -t
TraceType - Die zu verfolgenden Punkte und die aufzuzeichnende Tracedetailebene. Standardmäßig werden alle Tracepunkte aktiviert und ein Trace auf Standarddetailebene wird generiert.
Alternativ können Sie eine oder mehrere der in der folgenden Liste aufgeführten Optionen eingeben. Geben Sie für jeden Wert für tracetype , einschließlich
-t all, entweder-t parmsoder-t detailan, um die entsprechende Tracedetailstufe zu erhalten. Wenn Sie für einen bestimmten Tracetyp weder-t parmsnoch-t detailangeben, wird für diesen Tracetyp nur ein Trace auf Standarddetailebene generiert.Achtung: Bei Verwendung der Option-t apiwird ein Trace der MQI-Aufrufe angezeigt, wobei alle Eingabe-und Ausgabedatenblöcke im Hexadezimalformat ausgegeben werden.Sie sollten sich bewusst sein, dass interne IBM MQ -Programme auch MQI-Aufrufe ausführen, und Sie werden Tracedateien für diese Programme sehen. Normalerweise beginnen die Programmnamen mit
amqoderrunmq.Beachten Sie, dass amqrmppa-Programme viele Threads betreiben, von denen einige MQI-Aufrufe über das Netz von Clientanwendung erhalten. In diesen Threads werden MQI-Aufrufe in den
-t api-Traces angezeigt, aber Sie müssen daran denken, dass die Eingabeargumente für die MQI-Aufrufe, die im Programm amqrmppa aufgezeichnet wurden, möglicherweise nicht mit allen Details der MQI-Aufrufe übereinstimmen, die ursprünglich vom Client gestellt wurden.Wenn Sie also die Eingabeargumente für MQI-Aufrufe, die von der Clientanwendung ausgeführt werden, zuverlässig kennen müssen, müssen Sie die
-t api-Traceerstellung auf der Clientmaschine verwenden.Wenn Sie mehrere Tracetypen angeben, muss jeder über ein eigenes Flag '-t' verfügen. Sie können eine beliebige Anzahl Flags vom Typ '-t' angeben, sofern jedem ein gültiger Tracetyp zugeordnet wird.
Es ist kein Fehler, denselben Tracetyp für mehrere Flags '-t' anzugeben.Tabelle 1. TraceType-Parameterwerte Wert Beschreibung All Gibt Daten für alle Tracepunkte im System aus (Standardeinstellung). Mit dem Parameter all wird Tracing auf der Standarddetailebene aktiviert. API Gibt Daten für Tracepunkte aus, die MQI und wichtigen Komponenten des Warteschlangenmanagers zugeordnet sind. commentary Ausgabedaten für Tracepunkte, die Kommentaren in den IBM MQ -Komponenten zugeordnet sind. comms Gibt Daten für Tracepunkte aus, die Daten zugeordnet sind, die über Kommunikationsnetze laufen. csdata Gibt Daten für Tracepunkte aus, die internen Datenpuffern in allgemeinen Services zugeordnet sind. csflows Gibt Daten für Tracepunkte aus, die Prozessabläufen in allgemeinen Services zugeordnet sind. detail Aktiviert die Tracefunktion auf einer hohen Detailebene für Tracepunkte von Prozessabläufen. Explorer Ausgabedaten für Tracepunkte, die IBM MQ Explorer zugeordnet sind. Java Ausgabedaten für Tracepunkte, die Anwendungen zugeordnet sind, die die IBM MQ classes for Java -API verwenden. lqmdata Es werden Daten für die mit internen Datenpuffern im lokalen Warteschlangenmanager verknüpften Tracepunkte ausgegeben. lqmflows Gibt Daten für Tracepunkte aus, die Prozessabläufen im lokalen Warteschlangenmanager zugeordnet sind. mqxr Ausgabedaten für den Telemetrieservice (MQXR) otherdata Gibt Daten für Tracepunkte aus, die internen Datenpuffern in anderen Komponenten zugeordnet sind. otherflows Gibt Daten für Tracepunkte aus, die Prozessabläufen in anderen Komponenten zugeordnet sind. parms Aktiviert die Tracefunktion auf Standarddetailebene für Tracepunkte von Prozessabläufen. remotedata Gibt Daten für Tracepunkte aus, die internen Datenpuffern in der DFV-Komponente zugeordnet sind. remoteflows Es werden Daten für die mit dem Verarbeitungsfluss in der Kommunikationskomponente verknüpften Tracepunkte ausgegeben. servicedata Es werden Daten für die mit internen Datenpuffern in der Servicekomponente verknüpften Tracepunkte ausgegeben. serviceflows Gibt Daten für Tracepunkte aus, die Prozessabläufen in der Servicekomponente zugeordnet sind. spldata Gibt Daten für Tracepunkte aus, die Puffern und Steuerblöcken zugeordnet sind, die eine Sicherheitsrichtlinienoperation (AMS) verwenden. SPLFlows Gibt Daten für Tracepunkte aus, die Einstiegs- und Exitdaten für Funktionen zugeordnet sind, die eine Sicherheitsrichtlinienoperation (AMS) verwenden. soap Ausgabedaten für Tracepunkte, die IBM MQ Transport for SOAP zugeordnet sind. ssl Gibt Daten aus, die IBM Global Security Kit (GSKit) zugeordnet sind, um die SSL-Kanalsicherheit (Secure Sockets Layer) zu aktivieren. versiondata Ausgabedaten für Tracepunkte, die der aktiven Version von IBM MQ zugeordnet sind - -x
TraceType - Die Punkte, die nicht verfolgt werden sollen. Standardmäßig werden alle Tracepunkte aktiviert und ein Trace auf Standarddetailebene wird generiert. Sie können die Tracepunkte angeben, die für das Flag -t aufgeführt sind.
Sie können das Flag
-xmit Tracetypwerten verwenden, um die Eingangspunkte auszuschließen, die Sie nicht aufzeichnen wollen. Dies hilft, die produzierte Tracemenge zu verringern.Wenn Sie mehrere Tracetypen eingeben, muss jeder über ein eigenes Flag '-x' verfügen. Sie können eine beliebige Anzahl Flags -x angeben, sofern jedem ein gültiger Tracetyp zugeordnet wird.
- -l MaxSize
- Die maximale Größe einer Tracedatei (
AMQppppp.qq.TRC) in Megabyte (MB), wobei ppppp auf die Betriebssystemprozess-ID des jeweiligen IBM MQ -Prozesses verweist, für den ein Trace erstellt wird, und qq eine Folgenummer ist, wenn bereits eine Datei mit diesem Namen vorhanden ist. Wenn Sie beispielsweise für MaxSize den Wert 1 angeben, wird die Größe des Trace auf 1 MB beschränkt.Wenn eine Tracedatei den angegebenen Maximalwert erreicht, wird sie in
AMQppppp.qq.TRSumbenannt und eine neue DateiAMQppppp.qq.TRCwird begonnen. Wenn eine frühere Kopie einer DateiAMQppppp.qq.TRSvorhanden ist, wird sie gelöscht.Der höchste Wert, auf den MaxSize eingestellt werden kann, ist 2048 MB.
- -d
0 - Verfolgt keine Benutzerdaten.
- -d
-1 or all - Verfolgt alle Benutzerdaten.
- -d
NumOfBytes - Bei einem DFV-Trace: Verfolgt die angegebene Anzahl Datenbyte, einschließlich des Übertragungssegmentheaders (TSH).
- Bei einem MQPUT- oder MQGET-Aufruf: Verfolgt die angegebene Anzahl Nachrichtendatenbyte, die sich im Nachrichtenpuffer befinden.
- Werte von 1 bis 15 sind nicht zulässig.
- -i PidTids
- Die Prozess-ID (PID) und die Thread-ID (TID), auf die die Traceerzeugung beschränkt ist. Der Parameter -i kann nicht zusammen mit dem Parameter -e verwendet werden. Wenn Sie versuchen, den Parameter -i zusammen mit dem Parameter -e zu verwenden, wird eine Fehlernachricht ausgegeben.Das genaue Format dieses Parameters ist
PID[.TID]. For example:- Bei der Codierung von -i 12345 werden alle Threads in der PID 12345 nachverfolgt.
- Codierung -i 12345.67 zeichnet nur Thread 67 in PID 12345 aus
Dieser Parameter wird für .NET -Clients nicht unterstützt, wenn NMQ_MQ_LIB auf managedgesetzt ist, sodass der Client die verwaltete IBM MQ -Problemdiagnose verwendet.
- -p
Apps - Die benannten Prozesse, auf die die Traceerzeugung beschränkt ist. Apps ist eine durch Kommas getrennte Liste. Sie müssen jeden Namen in der Liste genau so angeben, wie der Programmname im FDC-Header "Program Name" angezeigt wird. Ein Asterisk (*) oder Fragezeichen (?) sind als Platzhalterzeichen zulässig. Sie können das Flag -p nicht mit dem Flag -e verwenden. Wenn Sie versuchen, das Flag -p mit dem Flag -e zu verwenden, wird eine Fehlernachricht ausgegeben.
Dieser Parameter wird für .NET -Clients nicht unterstützt, wenn NMQ_MQ_LIB auf managedgesetzt ist, sodass der Client die verwaltete IBM MQ -Problemdiagnose verwendet.
- -s
- Dokumentiert die derzeit aktiven Traceoptionen. Sie müssen diese Parameter exklusiv ohne andere Parameter verwenden.
Zum Speichern dieser Tracebefehle steht eine begrenzte Anzahl Bereiche zur Verfügung. Wenn alle Bereiche belegt sind, können weitere Tracebefehle nur akzeptiert werden, wenn ein vorhandener Bereich ersetzt wird. Die Bereichnummern sind nicht festgelegt. Wenn also der Befehl in Bereich 0 entfernt wird, beispielsweise durch den Befehl endmqtrc, werden alle anderen Bereiche nach oben verschoben, so wird z. B. Bereich 1 zu Bereich 0. Ein Stern (*) in einem Feld bedeutet, dass kein Wert definiert wird, und entspricht dem Platzhalter Stern.
Nachstehend finden Sie ein Beispiel für die Ausgabe dieses Befehls:
Listing Trace Control Array Used slots = 2 of 15 EarlyTrace [OFF] TimedTrace [OFF] TraceUserData [0] MaxSize [0] Trace Type [1] Slot position 1 Untriggered Queue Manager [avocet] Application [*] PID.TID [*] TraceOptions [1f4ffff] TraceInterval [0] Trace Start Time [0] Trace Stop Time [0] Start Trigger [KN346050K] Start Trigger [KN346080] Slot position 2 Untriggered Queue Manager [*] Application [*] PID.TID [*] TraceOptions [1fcffff] TraceInterval [0] Trace Start Time [0] Trace Stop Time [0] Start Trigger [KN346050K] Start Trigger [KN346080]Dieser Parameter wird für .NET -Clients nicht unterstützt, wenn NMQ_MQ_LIB auf managedgesetzt ist, sodass der Client die verwaltete IBM MQ -Problemdiagnose verwendet.
- -b
Start_Trigger - FDC-Sonden-IDs, für die die Tracefunktion aktiviert werden muss. Start_Trigger ist eine durch Kommas getrennte Liste von FDC-Sonden-IDs. In der Spezifikation von Test-IDs können Sie Asterisk (*) und Fragezeichen (?) Platzhalterzeichen verwenden. Sie können das Flag -b nicht mit dem Flag -e verwenden. Wenn Sie versuchen, das Flag -b mit dem Flag -e zu verwenden, wird eine Fehlernachricht ausgegeben. Dieser Parameter darf nur unter Anleitung des IBM Service verwendet werden.
Start_Trigger Aktion FDC=durch Kommas getrennte Liste von FDC-Sonden-IDs. Aktiviert die Tracefunktion, wenn FDCs mit den angegebenen FDC-Sonden-IDs generiert werden. Dieser Parameter wird für .NET -Clients nicht unterstützt, wenn NMQ_MQ_LIB auf managedgesetzt ist, sodass der Client die verwaltete IBM MQ -Problemdiagnose verwendet.
- -c
Stop_Trigger - FDC-Sonden-IDs, für die die Tracefunktion inaktiviert werden muss, oder Intervall in Sekunden, nach dem die Tracefunktion inaktiviert werden muss. Stop_Trigger ist eine durch Kommas getrennte Liste von FDC-Sonden-IDs. In der Spezifikation von Test-IDs können Sie Asterisk (*) und Fragezeichen (?) Platzhalterzeichen verwenden. Dieser Parameter darf nur unter Anleitung des Personals des IBM Service verwendet werden.
Stoppauslöser Aktion FDC=durch Kommas getrennte Liste von FDC-Sonden-IDs. Inaktiviert die Tracefunktion, wenn FDCs mit den angegebenen FDC-Sonden-IDs generiert werden. Intervall=n; dabei ist n eine ganze Zahl ohne Vorzeichen zwischen 1 und 32.000.000. Inaktiviert die Tracefunktion n Sekunden, nachdem sie gestartet wird, oder, falls die Tracefunktion bereits aktiviert wurde, inaktiviert die Tracefunktion n Sekunden, nachdem diese Instanz des Befehls abgesetzt wurde. Dieser Parameter wird für .NET -Clients nicht unterstützt, wenn NMQ_MQ_LIB auf managedgesetzt ist, sodass der Client die verwaltete IBM MQ -Problemdiagnose verwendet.
Rückkehrcodes
| Rückkehrcode | Beschreibung |
|---|---|
| AMQ7024 | Dem Befehl wurden ungültige Argumente bereitgestellt. |
| AMQ7077 | Sie haben keine Berechtigung zum Ausführen der angeforderten Operation. |
| AMQ8304 | Es sind bereits neun Traces gleichzeitig aktiv (Maximalwert). |
| 58 | Inkonsistente Verwendung von Installationen erkannt |
Beispiele für Aktivierung der Tracefunktion für verschiedene Detaillierungsebenen
strmqtrc -m QM1 -t csflows -t lqmflows -t parms
strmqtrc -m QM1 -x ssl -t parms
strmqtrc -t all -t detail
Beispiele für Aktivierung der Tracefunktion für eine FDC
Mit dem folgenden Befehl wird die Tracefunktion aktiviert, wenn FDC KN346050 oder FDC KN346080 in einem Prozess auftritt, der den Warteschlangenmanager QM1 verwendet:
strmqtrc -m QM1 -b FDC=KN346050,KN346080
Mit dem folgenden Befehl wird die Tracefunktion beim Auftreten von FDC KN34650 aktiviert und beim Auftreten von FDC KN346080 inaktiviert. In beiden Fällen muss die FDC in einem Prozess auftreten, der den Warteschlangenmanager QM1 verwendet:
strmqtrc -m QM1 -b FDC=KN346050 -c FDC=KN346080
Beispiele für die Verwendung der Flags -p und -m für einzelne und mehrfache Aufrufe von strmqtrc
- Gibt an, wie eine Kombination von Parametern bei einem einzelnen Aufruf des Befehls von IBM MQ als mit einem logischen UND verbunden interpretiert wird.
- Wie Mehrfachaufrufe des Befehls ohne zwischengeschalteten Befehl 'enqmqtrc' von IBM MQ als mit einem logischen OR verbunden interpretiert werden:
- Mit dem folgenden Befehl wird die Tracefunktion für alle Threads aktiviert, die durch die Ausführung eines beliebigen Prozesses namens amqxxx.exe entstehen:
strmqtrc -p amqxxx.exe - Nachdem Sie den Befehl strmqtrc gemäß Schritt 1 ausgeführt haben, können Sie einen der folgenden Befehle ohne einen zwischengeschalteten Befehl endmqtrc eingeben.
- Wenn Sie den folgenden Befehl nach dem Befehl in Schritt 1 ohne eingeschobenen Befehl 'enqmqtrc' starten, wird die Traceerstellung auf alle Threads beschränkt, die infolge eines beliebigen Prozesses namens amqxxx.exe entstehen und die den Warteschlangenmanager QM2 verwenden:
strmqtrc -p amqxxx.exe -m QM2 - Wenn Sie den folgenden Befehl nach dem Befehl in Schritt 1 ohne eingeschobenen Befehl 'enqmqtrc' starten, wird die Traceerstellung auf alle Prozesse und Threads beschränkt, die durch die Ausführung von amqxxx.exe entstehen oder die den Warteschlangenmanager QM2 verwenden:
strmqtrc -m QM2
- Wenn Sie den folgenden Befehl nach dem Befehl in Schritt 1 ohne eingeschobenen Befehl 'enqmqtrc' starten, wird die Traceerstellung auf alle Threads beschränkt, die infolge eines beliebigen Prozesses namens amqxxx.exe entstehen und die den Warteschlangenmanager QM2 verwenden:
Mit diesem Befehl wird die Traceerstellung für alle Warteschlangenmanagerprozesse und Anwendungen aktiviert, die ausgeführt werden und mit dem Warteschlangenmanager QM1 auf CPU 3 verbunden sind:
run -cpu=3 strmqtrc -m QM1
Wenn Sie einen Trace für alle Warteschlangenmanagerprozesse auf allen CPUs erstellen möchten, können Sie den Befehl strmqtrc auf allen CPUs ausführen, die auf Ihrem System verfügbar sind,.
![[V8.0.0.14 Jan 2020]](ng80014.gif)
Beispiel für die Aktivierung der dynamischen Traceerstellung für LDAP-Clientbibliothekscode im Lieferumfang von IBM MQ
Ab IBM MQ 8.0.0Fixpack 14ist es möglich, den LDAP-Client-Trace ein-und auszuschalten, ohne den Warteschlangenmanager zu stoppen oder zu starten.
strmqtrc -m QMNAME -t servicedataUm dieses Verhalten zu aktivieren, muss auch die Umgebungsvariable AMQ_LDAP_TRACE auf einen Wert ungleich null gesetzt werden. Weitere Informationen finden Sie unter Dynamisches Tracing von LDAP-Clientbibliothekscode aktivieren.