cciUserTraceW

Schreibt eine Nachricht aus einem Nachrichtenkatalog (mit Einfügungen) in einen Benutzertrace. Es wird auch eine Nachricht in einen Service-Trace geschrieben, falls dieser aktiv ist.

Der Text der Nachricht, der in den Benutzertrace geschrieben wird, hat folgendes Format:

<Datum-Zeitmarke> <Threadnummer> UserTrace <Nachrichtentext mit Einfügungen> <Nachrichtenerläuterung>

Syntax

void cciUserTraceW(
  int*                        returnCode,
  CciObject*          object,
  const CciChar*      messageSource,
  int                 messageNumber,
  const CciChar*      traceText,
                      ...
);

Parameter

returnCode
Empfängt den Rückkehrcode von der Funktion (Ausgabe). Ein Nullzeiger zeigt an, dass der benutzerdefinierte Knoten nicht für Fehler zuständig sein möchte. Alle Ausnahmebedingungen, die bei der Ausführung dieses Aufrufs ausgegeben werden, werden beim nächsten vorgeschalteten Knoten im Nachrichtenfluss erneut ausgegeben. Wenn die Eingabe nicht NULL ist, gibt die Ausgabe den Erfolgsstatus des Aufrufs an. Wenn bei der Ausführung eine Ausnahmebedingung auftritt, wird als Wert für '*returnCode' bei der Ausgabe CCI_EXCEPTION festgelegt. Rufen Sie 'CciGetLastExceptionData' auf, um weitere Informationen zu der Ausnahmebedingung zu erhalten.
object
Die Adresse des Objekts, das dem Traceeintrag (Eingabe) zugeordnet werden soll. Bei dem Objekt kann es sich um die Adresse eines CciNode*- oder CciParser*-Objekts handeln. Wenn es sich um ein CciNode*-Objekt handelt, dann wird dessen Name in den Trace geschrieben. Wenn es sich um ein CciParser*-Objekt handelt, dann wird der Name desjenigen Knotens in den Trace geschrieben, der den Parser erstellt hat. Mit diesem Objekt wird auch bestimmt, ob der Eintrag in den Trace geschrieben werden soll. Der Eintrag wird nur hineingeschrieben, wenn der Trace für den Knoten aktiv ist. Derzeit übernehmen Knoten ihre Trace-Einstellungen vom Nachrichtenfluss.
Wenn dieser Parameter NULL lautet, wird die Tracestufe für die Ausführungsgruppe zurückgegeben.
messageSource
Eine Zeichenfolge, die die Windows-Nachrichtenquelle oder den Linux- und UNIX-Nachrichtenkatalog (Eingabe) angibt. Beim Formatieren des Trace wird eine Nachricht aus der landessprachlichen Version dieses Katalogs geschrieben. Es gilt die länderspezifische Einstellung der Umgebung, in der der Trace formatiert wird. Es ist möglich, den Broker auf einer bestimmten Plattform auszuführen, das Protokoll auch auf dieser zu lesen und es dann auf einer anderen Plattform zu formatieren. Wird der Broker beispielsweise unter Linux oder UNIX ausgeführt, dort aber keine CAT-Datei vorhanden ist, kann der Benutzer das Protokoll lesen und es dann auf eine Windows-Maschine übertragen. Dort kann das Protokoll unter Verwendung der PROPERTIES-Datei formatiert werden.
Wenn dieser Parameter NULL lautet, tritt genau dasselbe ein wie beim Angeben einer leeren Zeichenfolge. D. h., alle anderen Informationen werden in das Protokoll geschrieben, und das Feld für den Katalog enthält als Wert eine leere Zeichenfolge. Deshalb kann das Formatierungsprogramm für Protokolle die Nachrichtenquelle nicht finden. Folglich schlägt die Formatierung dieses Eintrags fehl.
messageNumber
Die Nummer, die die Nachricht innerhalb des Parameters 'messageSource' kennzeichnet (Eingabe). Wenn der Parameter 'messageSource' keine Nachricht enthält, die dem Parameter 'messageNumber' entspricht, kann das Formatierungsprogramm für Protokolle diesen Eintrag nicht formatieren.
traceText
Eine Folge aus Zeichen, die auf NULL (Eingabe) endet. Diese Zeichenfolge wird in den Service-Trace geschrieben, und so können Traceeinträge leicht mit Pfaden durch den Quellcode in Verbindung gebracht werden. Beispielsweise könnte es mehrere Pfade durch den Code geben, die dieselbe Nachricht (messageSource und messageNumber) im Trace zur Folge haben. Zwischen diesen verschiedenen Pfaden kann mit Hilfe von 'traceText' unterschieden werden. D. h., die Zeichenfolge 'traceText' ist eine statische Literalzeichenfolge im Quellcode. Deshalb wird sich dieselbe Zeichenfolge sowohl in der Quellcodedatei als auch in der formatierten Tracedatei befinden.
...
Eine C-Variablenargumentenliste, die Nachrichteneinfügungen enthält, die der Nachricht beigefügt sind (Eingabe). Diese Einfügungen werden als Zeichenfolgen behandelt, und es wird vorausgesetzt, dass die Variablenargumente vom Typ pointer to CciChar sind.
Das letzte Argument in dieser Liste muss (CciChar*)0 sein.

Rückgabewerte

Keine. Wenn ein Fehler auftritt, gibt der Parameter returnCode die Fehlerursache an.

Beispiel

const CciChar*   myMessageSource=CciString("SwitchMSG",BIP_DEF_COMP_CCSID);
const CciChar*   text = CciString("propagating to add terminal",
                                   BIP_DEF_COMP_CCSID);
const CciChar*   insert = CciString("add", BIP_DEF_COMP_CCSID);
CciNode* thisNode = ((NODE_CONTEXT_ST*)context)->nodeObject;
int          rc = CCI_SUCCESS;
 
cciUserTrace(&rc,
             (CciObject*)thisNode,
             myMessageSource,
             1,
             text,
             insert,
             (CciChar*)0);
checkRC(rc);
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
as24580_