cciUserTraceW を使用して、メッセージ・カタログからのメッセージ (挿入あり) をユーザー・トレースに書き込みます。 サービス・トレースがアクティブである場合、メッセージはサービス・トレースにも書き込まれます。
ユーザー・トレースに書き込まれるメッセージは、以下の形式になります。
<date-time stamp> <threadNumber> UserTrace <Message text with inserts> <Message Explanation>
void cciUserTraceW(
int* returnCode,
CciObject* object,
const CciChar* messageSource,
int messageNumber,
const CciChar* traceText,
...
);
現行のブローカー・メッセージ・カタログを使用するには、 すべてのオペレーティング・システムで BIPmsgs を指定します。 あるいは、独自のメッセージ・カタログを作成することもできます。
トレースをフォーマット設定する場合は、このカタログの NLS バージョンからのメッセージが書き込まれます。
使用されるロケールは、トレースをフォーマット設定する環境のロケールです。 1 つのオペレーティング・システムでブローカーを実行し、そのオペレーティング・システムでログを読み、それから別のオペレーティング・システムでそのログをフォーマット設定することができます。 例えば、ブローカーを Linux、UNIX、または z/OS で実行しているものの、 そこには使用可能な .cat ファイルがない場合、 ユーザーはログを読んでからそれを Windows に転送し、 .properties ファイルを使ってログをフォーマット設定できるかもしれません。
このパラメーターが NULL の場合は、空ストリングを指定したときと同じ結果になります。 すなわち、他のすべての情報がログに書き込まれ、カタログ・フィールドには空ストリング値が入ります。 そのため、ログ・フォーマッターはメッセージ・ソースを見つけることができずに、このエントリーのフォーマット設定に失敗します。
このリストの最後の引数は、 (CciChar*)0 でなければなりません。
なし。 エラーが発生した場合、returnCode パラメーターがエラーの理由を示します。
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);