Mit cciUserTraceW können Sie eine Nachricht aus einem Nachrichtenkatalog (mit Einfügungen) in einen Benutzertrace schreiben. 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>
void cciUserTraceW(
int* returnCode,
CciObject* object,
const CciChar* messageSource,
int messageNumber,
const CciChar* traceText,
...
);
Geben Sie auf allen Betriebssystemen BIPmsgs an, um den aktuellen Nachrichtenkatalog für den Broker zu verwenden. Als Alternative können Sie auch Ihren eigenen Nachrichtenkatalog erstellen.
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. Sie können den Broker auf einem Betriebssystem ausführen, das Protokoll auf diesem Betriebssystem lesen und es dann auf einem anderen Betriebssystem formatieren. Wenn der Broker beispielsweise unter Linux, UNIX oder z/OS ausgeführt wird, dort aber keine CAT-Datei vorhanden ist, können Sie das Protokoll lesen und es dann auf ein Windows-System übertragen, wo es mithilfe der Datei .properties formatiert wird.
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, und die Formatierung dieses Eintrags schlägt fehl.
Das letzte Argument in dieser Liste muss (CciChar*)0 sein.
Keine. Wenn ein Fehler auftritt, gibt der Parameter returnCode die Fehlerursache an.
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);