Liberty での Session Initiation Protocol (SIP) バイナリー・ログおよびトレース拡張

バイナリー・ロギングでは、開発者がログ・レコードおよびトレース・レコードに拡張フィールドを追加することができ、 それに応じて、ユーザーが拡張の値でログ・レコードおよびトレース・レコードをフィルタリングすることができます。

ログ・レコードおよびトレース・レコードには、レコード作成時刻や記録されるメッセージ内容などの情報のフィールドが含まれます。 これらのフィールドは、すべてのログ・レコードおよびトレース・レコードに存在するコア・フィールドです。 それに対し、拡張フィールドは、アプリケーション開発者がログ・レコードおよびトレース・レコードに追加できるフィールドで、 特定のログおよびトレース内容を検索する際にフィルター基準として使用できます。 これらのログおよびトレース拡張は、拡張フォーマットを使用するようにテキスト出力フォーマットを構成した場合にバイナリー・ログに表示されるか、 または、拡張フォーマットで binaryLog コマンドを使用した場合に表示されます。

管理者

ログ・レコードおよびトレース・レコードのフィルタリングに使用できる多くの拡張を、アプリケーション・サーバーは自動的に作成します。 また、アプリケーション開発者によって追加された拡張を使用して、ログ・レコードおよびトレース・レコードをフィルタリングすることも可能です。 ログ・レコードおよびトレース・レコード拡張の内容に基づいてレコードをフィルタリングするには、binaryLog コマンド行ツールを使用することができます。詳細については、『BinaryLog コマンド・オプション』を参照してください。

例えば、以下の binaryLog コマンドを使用して、SIP コンテナーが処理したすべての SIP アプリケーション・セッションを表示できます。
binaryLog view binaryFile --includeExtension=SIPASId=* --format=advanced
開発者

バイナリー・ロギングを使用して、開発者は、ログ・レコード・コンテキスト API の com.ibm.websphere.logging.hpel.LogRecordContext によってログ・レコードおよびトレース・レコードにカスタム拡張を追加することができます。 バイナリー・ロギングはログ・レコードおよびトレース・レコードを格納する際、同じスレッド上のログ・レコード・コンテキスト内に存在する拡張をすべて含めます。 例えば、サーブレット・フィルターを作成して、重要な HTTP 要求のパラメーターをログ・レコード・コンテキストに追加できます。 そのサーブレットの実行中、HPEL API は同じスレッド上で作成されるどのログ・レコードおよびトレース・レコードにもそれらの拡張を追加します。

その他のログおよびトレース・レコードのフィールドと同様に、開発者は、HPEL API を使用してレコードの拡張にアクセスできます。この API は、ログ・リポジトリーおよびトレース・リポジトリーから読み取るツールを作成する場合に役立ちます。 開発者は、ログ・レコード・コンテキスト API を使用して、実行時にカスタム・ログ・ハンドラー、フィルター、およびフォーマッターで拡張にアクセスすることも可能です。

以下の表では、トレースのさまざまな側面のフィルタリングに使用できる ID を含めて、ログおよびトレース拡張について説明します。

表 1. ログおよびトレース拡張
拡張 説明
appName

ログ・レコードまたはトレース・レコードが関係する Java™ Platform, Enterprise Edition (Java EE) アプリケーションの名前を指定します (該当がある場合)。

requestID

各ログ・レコードまたはトレース・レコードが関係する要求の固有 ID を指定します (該当がある場合)。 アプリケーション・サーバーがログ・レコードおよびトレース・レコードに requestID 拡張を追加するには、 管理コンソールでログおよびトレース相関とも呼ばれるクロス・コンポーネント・トレース (XCT) を使用可能にする必要があります。 要求 ID は、HTTP や JMS 要求など、特定タイプの要求についてのみ追加されます。

SIPCallId

SIP プロキシー・サーバーまたは SIP コンテナーによって処理される SIP 呼び出し ID を指定します。 この情報は、SIP プロキシー・サーバーおよび SIP コンテナー間で共通です。 この拡張を使用して、さまざまなコンポーネントをまたがって SIP 呼び出しフローをトラッキングできます。 HPEL ロギングが有効になっている場合、SIP プロキシー・サーバーと SIP コンテナーは、各ログ・レコードおよびトレース・レコードにこの ID を自動的に追加します。

SIPASId

SIP コンテナーによって処理される SIP アプリケーション・セッション ID を指定します。 この情報は、SIP コンテナー間で共通です。 この拡張を使用して、SIP 呼び出しフローをトラッキングできます。 HPEL ロギングが有効になっている場合、SIP コンテナーは、各ログ・レコードおよびトレース・レコードにこの ID を自動的に追加します。

 SIPSessionId

SIP コンテナーによって処理される SIP セッション ID を指定します。 この情報は、SIP コンテナー間で共通です。 この拡張を使用して、SIP 呼び出しフローをトラッキングできます。 HPEL ロギングが有効になっている場合、SIP コンテナーは、各ログ・レコードおよびトレース・レコードにこの ID を自動的に追加します。

SIPCallId2

同じ SIP アプリケーション・セッションに関連付けられ、SIP コンテナーによって処理される 2 番目の SIP 呼び出し ID を指定します。 この情報は、SIP コンテナー間で共通です。 この拡張を使用して、SIP 呼び出しフローをトラッキングできます。 HPEL ロギングが有効になっている場合、SIP コンテナーは、各ログ・レコードおよびトレース・レコードにこの ID を自動的に追加します。

1 つの SIP アプリケーション・セッションに 3 つ以上の SIP 呼び出し ID が関連付けられている場合、最初の 2 つの ID だけが記録されます。 その他の ID は記録されません。

SIPSessionId2

同じ SIP アプリケーション・セッションに関連付けられ、SIP コンテナーによって処理される 2 番目の SIP セッション ID を指定します。 この情報は、SIP コンテナー間で共通です。 この拡張を使用して、SIP 呼び出しフローをトラッキングできます。 HPEL ロギングが有効になっている場合、SIP コンテナーは、各ログ・レコードおよびトレース・レコードにこの ID を自動的に追加します。

1 つの SIP アプリケーション・セッションに 3 つ以上の SIP セッション ID が関連付けられている場合、最初の 2 つの ID だけが記録されます。 その他の ID は記録されません。

thread

各ログ・レコードまたはトレース・レコードが関係する要求のスレッド名を指定します。


トピックのタイプを示すアイコン 参照トピック



タイム・スタンプ・アイコン 最終更新: Monday, 5 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-libcore-mp&topic=rwlp_sip_logtraceextensions
ファイル名: rwlp_sip_logtraceextensions.html