Trace ノード

このトピックには、以下のセクションが含まれています。

目的

テキスト、メッセージ内容、また日時情報から構成されるトレース・レコードを生成するには、Trace ノードを使用します。 これは、メッセージ・フローの動きをモニターするのに役立ちます。

レコードをユーザー・トレース・ファイル、別のファイル、またはローカル・エラー・ログ (他のすべての WebSphere Message Broker コンポーネントによって書き込まれるエラーおよび情報メッセージを含む) に書き込むことができます。 トレースをローカル・エラー・ログに書き込む場合には、WebSphere Message Broker で提供されているデフォルトのメッセージ・カタログからメッセージを発行したり、独自のメッセージ・カタログを作成することができます。

Trace ノードの操作は、Trace ノードがあるメッセージ・フローのユーザー・トレースの設定から独立しています。 特に、Trace ノードがユーザー・トレース・ログに書き込むレコードは、ユーザー・トレースがメッセージ・フローに対してその時点でアクティブでなくても書き込まれます。

ワークベンチでは、Trace ノードは次のアイコンで表されます。

Trace ノード・アイコン

メッセージ・フロー内でのこのノードの使用

このノードが使用される方法に関しては、次のサンプルを参照してください。

Trace ノードを組み込むと、メッセージ・フローでのエラーを診断するのに役立ちます。 フロー内のさまざまなポイントでメッセージの内容をトレースすると、処理のシーケンスを判別できます。 また、メッセージの内容を記録したり、メッセージに対する特定のノードのアクションを検査できるよう、Trace ノードを構成できます。例えば、Compute ノードの直後に Trace ノードを組み込み、出力メッセージが要求したとおりの形式になっているかを検査できます。

メッセージ・フローのテストを行い、操作が正しいことを検証したら、メッセージ・フローから Trace ノードを除去します。

さらに、Trace ノードを使用して、メッセージ・フローでのエラー処理における情報を提供することができます。 例えば、このノードを使用して、メッセージの内容または形式のエラーに起因する処理中の障害を記録できます。

Trace ノードの構成

Trace ノードのインスタンスをメッセージ・フローに入れると、Trace ノードを構成することができます。 エディター・ビューでノードを右クリックして、「プロパティー」を選択します。 ノードの基本プロパティーが表示されます。

値を入力する必要のある (デフォルト値が定義されていない) すべての必須プロパティーには、プロパティー・ダイアログにアスタリスクが表示されます。

以下のように、Trace ノードを構成します。

  1. 宛先」プロパティーを設定して、Trace ノードからの出力を書き込む場所を示します。
    • ローカル・システムのエラー・ログにトレース・レコードを書き込むには、「ローカル・エラー・ログ」を選択します。

      トレース・レコードに記録される情報が、以下に書き込まれます。

      • Windows ではイベント・ログ (アプリケーション・ビュー)
      • UNIX では、syslog
      • z/OS では、オペレーター・コンソール。

      このオプションを選択する場合には、書き込むトレース・メッセージの数、およびメッセージが定義されているメッセージ・カタログを指定する必要があります。

      • メッセージ・カタログ」をブランクのままにしておく場合には、WebSphere Message Broker で提供されるデフォルトのメッセージ・カタログが、書き込むメッセージのソースとして使用されます。

        また、「メッセージ番号」に、レコードのエラー番号を入力する必要があります。番号 3051 から 3099 が、このために WebSphere Message Broker (デフォルト) カタログで予約されています。 これらの各デフォルト・メッセージ・カタログのテキストは同じですが、トレースする各状態ごとにこの範囲内の番号を使用すると、エラーの正確な原因を特定できます。 デフォルトのメッセージ番号は 3051 です。

      • 独自のメッセージ・カタログを作成する場合には、「メッセージ・カタログ」にそのカタログの完全修飾ファイル名を入力します。

        また、「メッセージ番号」プロパティーに、ローカル・エラー・ログに書き込みたいカタログ内のメッセージに該当する番号を入力する必要もあります。一部のプラットフォームでは、00 で終わるメッセージ番号はシステムで使用するために予約されているので、メッセージ・カタログには 3100 のような番号のメッセージを組み込まないでください。

    • システム生成のユーザー・トレース・ログにトレース・レコードを書き込むには、「ユーザー・トレース」を選択します。

      これらのレコードは、デプロイされたメッセージ・フローの「ユーザー・トレース」プロパティーの設定に関係なく書き込まれます。

      ユーザー・トレースは、ルート・ディレクトリーの ¥log サブディレクトリーに書き込まれます (例えば、Windows 2000 のデフォルトでは c:¥Program Files¥IBM¥WebSphere Message Broker です)。ファイル名は、ブローカー名、ブローカーの UUID、および userTrace.bin の接尾部で構成されています (例えば、broker.e51906cb-dd00-0000-0080-b10e69a5d551.userTrace.bin.0 となります)。 ユーザー・トレース・ログを表示する前に、mqsireadlog および mqsiformatlog コマンドを使用する必要があります。

    • ファイルを選択して、そのファイルにトレース・レコードを書き込むには、「ファイル」を選択します。

      このオプションを選択する場合には、「ファイル・パス 」を、トレースの完全修飾パス名に設定することも必要です。このパスを設定しない場合、ファイルの位置はシステムに依存します。 例えば、z/OS の場合には、ファイルはブローカー・サービス ID のホーム・ディレクトリーに作成されます。

      トレース・ファイルには任意の名前を付けることができます。 例えば、c:¥$user¥trace¥trace.log となります。

      まだ存在していないファイルを指定した場合には、そのファイルが作成されます。 ただし、この処理ではライブラリーは作成されません。 したがって、絶対パスがすでに存在している必要があります。

    • トレース・レコードの書き込みを行わない場合は、「なし」を選択します。
  2. パターン」で、どのような情報を書き込むかを指定するために、ESQL パターンを作成します。トレース・レコードをローカル・エラー・ログに書き込む場合は、選択したメッセージ番号のテキストに書き込まれる情報がパターンによって制御されます。 デフォルトのメッセージ・カタログを使用し、3051 から 3099 の範囲内の番号を使用する場合、メッセージ・テキストにパターン情報が &1 のように挿入されます。
    • トレース・レコードにコピーするプレーン・テキストを、入力したとおりに正確に書き込むことができます。
    • 完全なフィールド ID を文字 ${} で囲んで指定することによって、トレース・レコードに書き込むメッセージの部分を識別できます。 メッセージ全体を記録するには、${Root} と指定します。
    • ESQL 関数を使用すると、追加の情報を提供できます。 例えば、ESQL 関数の CURRENT_DATE を使用すると、トレース・レコードが書き込まれた日付または時刻、あるいはその両方を記録できます。

    以下のパターンは、使用可能なオプションの一部を示しています。 テキストの最初の行が書き込まれ、現行メッセージの 2 つのエレメントが記録され、単純なタイム・スタンプが追加されます。

    Message passed through with the following fields:
    Store name is ${Body.storedetailselement.storename}
    Total sales are ${Body.totalselement.totalsales}
    Time is: ${EXTRACT(HOUR FROM CURRENT_TIMESTAMP)}
    :${EXTRACT(MINUTE FROM CURRENT_TIMESTAMP)}

    結果のトレース・レコードは次のようになります。

    Message passed through with the following fields:
    Store name is 'SRUCorporation'
    Total sales are '34.98'
    Time is: 11:19

    パターンに構文エラーがあると、Trace ノードが含まれているメッセージ・フローは通常どおりデプロイされますが、このノードからはトレース・レコードは書き出されません。

  3. 簡略説明または詳細説明 (あるいはその両方) を入力するには、プロパティー・ダイアログ・ナビゲーターの「説明」を選択します。
  4. 「適用」をクリックすると、プロパティー・ダイアログを閉じずに Trace ノードが変更されます。 「OK」をクリックすると、変更を適用してプロパティー・ダイアログを閉じます。

    「キャンセル」をクリックすると、ダイアログを閉じてプロパティーに対して行った変更をすべて破棄します。

ターミナルおよびプロパティー

Trace ノードのターミナルについては、次の表に説明されています。

ターミナル 説明
In ノードが処理するメッセージを受け入れる入力ターミナル。
Out メッセージが伝搬される際に経由する出力ターミナル。

以下の表でノードのプロパティーを説明します。M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、プロパティー・ダイアログにアスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 かどうかを示します (メッセージ・フローを bar ファイルに追加してデプロイするとき、値を変更できます)。

Trace ノードの基本プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
宛先 はい いいえ ユーザー・トレース このノードが書き込むトレース・レコードの宛先。 有効な選択項目は、「ユーザー・トレース」「ファイル」「ローカル・エラー・ログ」、および「なし」です。
ファイル・パス いいえ はい   レコードが書き込まれるファイルの完全修飾ファイル名。 「宛先」が「ファイル」に設定されている場合に限り有効です。
パターン いいえ いいえ   トレース・レコードに含めるデータ。
メッセージ・カタログ いいえ いいえ   例外のエラー番号のエラー・テキストを取り出す元のメッセージ・カタログの名前。 デフォルト値 (ブランク) は、WebSphere Message Broker で提供されるメッセージ・カタログからメッセージが取られることを示します。
メッセージ番号 いいえ いいえ 3051 書き込むメッセージのエラー番号。

Trace ノードの説明プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
簡略説明 いいえ いいえ   ノードの簡単な説明
詳細説明 いいえ いいえ   メッセージ・フロー内のノードの目的を説明するテキスト
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac04840_