Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Trace-Informationen mit dem Programm xtitrace ausgeben

&pagelevel(3)&pagelevel

Das Programm xtitrace liest die vom XTI-Trace erzeugten Trace-Informationen aus einer oder mehreren Dateien. xtitrace verarbeitet diese Trace-Informationen gemäß den für xtitrace spezifizierten Optionen und gibt das Ergebnis auf die Standardausgabe aus.

Nach erfolgreicher Ausführung von xtitraxce ist der Status 0, andernfalls ungleich 0.

Programm xtitrace aufrufen

Das Programm xtitrace rufen Sie wie folgt auf:


xtitrace[ -option] file ...

-option

Mit option legen Sie fest, welche Informationen der durch file spezifizierte(n) Trace-Datei(en) auszugeben sind. Pro xtitrace-Aufruf können Sie für option mehrere der nachfolgend beschriebenen Werte angeben.

Einen oder mehrere der folgende Werte können Sie für option angeben:

c

Ausgegeben werden die Trace-Informationen zu XTI-Aufrufen für folgende Aktionen:

  • Installieren/Deinstallieren einer Kommunikationsanwendung
  • Einrichten/Abbauen einer Verbindung

Betroffen sind die XTI-Funktionen t_accept(), t_bind(), t_close(), t_connect(), t_listen(), t_open(), t_rcvconnect(), t_rcvdis(), t_rcvrel(), t_snddis(), t_sndrel() und t_unbind().

d

Ausgegeben werden die Trace-Informationen zu XTI-Aufrufen für den Datenaustausch.

Betroffen sind die XTI-Funktionen t_rcv(), t_rcvudata(), t_rcvuderr(), t_snd() und t_sndudata().

m

Ausgegeben werden die Trace-Informationen zu XTI-Aufrufen, die bei den Optionen c und d nicht berücksichtigt sind.

Betroffen sind die XTI-Funktionen t_alloc(), t_error(), t_free(), t_getinfo(), t_getstate(), t_look(), t_optmgmt() und t_sync().

Wenn keiner der oben genannten Options-Werte angegeben ist, dann werden alle oben genannten Trace-Informationen ausgegeben, so als wäre -cdm angegeben worden.

v

Ausgegeben werden die Trace-Informationen zu allen XTI-Aufrufen sowie die Werte der zugehörigen Parameter und Optionen. Falls Parameter vorkommen, die als Zeiger übergeben werden, werden die Werte der durch die Zeiger adressierten Objekte ebenfalls ausgegeben. Letzteres setzt allerdings voraus, dass die entsprechenden Daten bei der Trace-Erstellung aufgezeichnet wurden (siehe Abschnitt "Umgebungsvariable XTITRACE parametrisieren").

Wenn XTITRACE mit Option S parametrisiert wurde, sollten Sie für option den Wert v spezifizieren. Die Angabe -v hat dieselbe Bedeutung wie die Angabe -cdmv.

file ...

Mit file spezifizieren Sie den Namen einer Datei, die binäre Trace-Daten enthält. Sie können auch mehrere Dateinamen angeben.

Ausgabeformat des XTI-Trace

Das Programm xtitrace beginnt die Ausgabe immer mit einem Header. Dahinter schreibt xtitrace die Trace-Informationen zu den einzelnen XTI-Aufrufen. Je nach Parametrisierung der Umgebungsvariablen XTITRACE und des Programms xtitrace gibt xtitrace für jeden protokollierten XTI-Aufruf entweder eine einzelne Zeile oder mehrere Zeilen unterschiedlichen Formats aus.

Format des Headers

Der Header enthält folgende Informationen:

  • Versionsnummer der XTI-Bibliothek

  • Datum und Uhrzeit des Trace-Beginns

  • spezifizierte Werte der Ausgabeoption für xtitrace

  • Name(n) der Trace-Datei(en), deren Inhalt xtitrace ausgibt

Beispiel:

    XTI TRACE (V5.0)                            Wed Jul 26 16:29:56 2023
    OPTIONS 'cdm' TRACE FILE './XTIF00677'
Format der ersten Ausgabezeile für einen protokollierten XTI-Aufruf

Die Trace-Information für einen XTI-Aufruf beginnt immer mit einer Zeile, die wie folgt aufgebaut ist.

  • Am Anfang der Zeile steht der Zeitstempel:
    minutes:seconds.milliseconds         (z.B. 24:16.324)
    Die Genauigkeit in Millisekunden hängt von der verwendeten Hardware ab.
  • An den Zeitstempel schließt sich der aufgezeichnete XTI-Aufruf (z.B. t_bind()) an. Dahinter folgt eine in runde Klammern eingeschlossene Liste, in der die Parameter und zugehörigen Parameterwerte des betreffenden XTI-Aufrufs aufgeführt sind (in der von XTI geforderten Reihenfolge). Die Parameterwerte sind in dezimaler (%d), sedezimaler (0x%x) oder symbolischer Form (%s) dargestellt. Ein sedezimal dargestellter Parameterwert beginnt immer mit 0x.

    Im Einzelnen gilt für die Darstellung von Parametern und zugehörigen Werten:
    • Werte von Zeigern sind sedezimal dargestellt.
    • Bei Parametern vom Typ Integer (z.B. fd) kann der korrespondierende Wert in sedezimaler, dezimaler oder symbolischer Form dargestellt sein. Parameter und zugehöriger Wert sind durch ein Leerzeichen getrennt.
  • Bei XTI-Funktionen, deren Ausführung vom Zustand des Transportendpunkts abhängt, informiert das Trace-Protokoll, ob der Aufruf blockiert (Standardfall) oder nicht (Spezifikation: O_NDELAY bzw. O_NONBLOCK) .

Format weiterer Ausgabezeilen für einen protokollierten XTI-Aufruf

Die nachfolgend erläuterten Trace-Information gibt xtitrace nur aus, wenn die beiden folgenden Bedingungen erfüllt sind:

  • Für die Trace-Erstellung wurde die Variable XTITRACE mit Option S parametrisiert.

  • Das Programm xtitrace wurde mit Option v parametrisiert.

Für Parameter, die als Zeiger übergeben werden, gibt xtitrace dann Namen und Werte der von diesen Zeigern adressierten Datenobjekte aus. Die Werte dieser Datenobjekte (z.B. Strukturkomponenten) werden sedezimal ausgegeben.

Die Trace-Informationen zu Strukturkomponenten enthalten einige Sonderzeichen mit folgender Bedeutung:

>

Der betreffenden Komponente muss vor Aufruf der protokollierten XTI-Funktion von der aufrufenden Kommunikationsanwendung ein Wert zugewiesen werden.

<

In der betreffenden Komponente wird von der protokollierten XTI-Funktion ein Wert zurückgeliefert, falls die XTI-Funktion ordnungsgemäß ausgeführt wird.

-

Der Wert der betreffenden Komponente ist für die protokollierte XTI-Funktion ohne Bedeutung.

---

Wenn dies an Stelle eines Komponentenwerts ausgegeben wird, ist der betreffenden Komponente kein Wert zugeordnet.

Format der letzten Ausgabezeile für einen protokollierten XTI-Aufruf

In der letzten Zeile für einen protokollierten XTI-Aufruf wird immer der Returnwert der betreffenden XTI-Funktion ausgegeben. Im Fehlerfall werden t_errno, evtl. errno sowie Angaben zur Fehlerposition (errpos) ausgegeben.

Beispiele

Beispiel für eine kurze Protokollierung
$ xtitrace -c ./XTIF00677

    XTI TRACE (V5.0)                            Wed Jul 26 16:29:56 2023
    OPTIONS 'c' TRACE FILE './XTIF00677'

29:56.000 t_open(name /dev/tcp, oflag BLOCK [0x2], info 0x0)
            return: 4
29:56.000 t_bind(fd 4, req 0x0, ret 0x0)
            return: 0
29:56.000 t_connect(fd 4, sndcall 0x12ee598, rcvcall 0x0) BLOCK
            return: 0
$ 
Beispiel für eine ausführliche Protokollierung
$ xtitrace -cv ./XTIF00677

    XTI TRACE (V5.0)                            Wed Jul 26 16:29:56 2023
    OPTIONS 'cv' TRACE FILE './XTIF00677'

29:56.000 t_open(name /dev/tcp, oflag BLOCK [0x2], info 0x0)
            return: 4
29:56.000 t_bind(fd 4, req 0x0, ret 0x0)
                        qlen (>) 0
            return: 0
29:56.000 t_connect(fd 4, sndcall 0x12ee598, rcvcall 0x0) BLOCK
            sndcall:    addr.maxlen(-)  addr.len(>)     addr.buf(>)
                        ---             16              0x12ee5d8
               0  0002270f 7f000001  00000000 00000000  |
            return: 0
$