WebSphere Application Server Network Deployment, Version 6.1   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows, Windows Vista

             目次と検索結果のパーソナライズ化

JRas メッセージおよびトレース・イベントのタイプ

基本的な JRas メッセージおよびイベント・タイプは、 WebSphere Application Server が本来認識するタイプとは異なるため、 JRas タイプは、ランタイム環境に固有のタイプにマップされます。 JRas メッセージおよびトレース・イベントの処理方法は、 カスタム・フィルターとメッセージ・コントロールで制御できます。

イベント・タイプ

このタスクおよびそのサブタスクに記載の JRas フレームワークは、推奨されません。 しかし、Java ロギングを使用して、同様の結果を得ることができます。

スタンドアロンの JRas ロギング・ツールキットが定義する基本メッセージとトレース・イベントのタイプは、 WebSphere Application Server ランタイムが認識するネイティブ・タイプと同じではありません。 基本の JRas タイプはネイティブ・タイプ上にマップされます。 このマッピングは、プラットフォームやエディションによって異なる場合があります。 マッピングについては、以下のセクションで説明します。

プラットフォーム・メッセージ・イベントのタイプ

WebSphere Application Server ランタイムが認識し処理するメッセージ・イベントのタイプは、 スタンドアロンの JRas ロギング・ツールキットに用意された RASIMessageEvent インターフェースで定義されます。 これらのメッセージ・タイプは、以下のように、ネイティブ・メッセージ・タイプ上にマップされます。
WebSphere Application Server のネイティブ・タイプ JRas RASIMessageEvent タイプ
Audit TYPE_INFO、TYPE_INFORMATION
警告 TYPE_WARN、TYPE_WARNING
エラー TYPE_ERR、TYPE_ERROR

プラットフォーム・トレース・イベントのタイプ

WebSphere Application Server ランタイムが認識し処理するトレース・イベントのタイプは、 スタンドアロンの JRas ロギング・ツールキットに用意された RASITraceEvent インターフェースで定義されます。 RASITraceEvent インターフェースは、豊富で、複雑なタイプのセットを提供します。 このインターフェースは、列挙型のタイプのセットと同様に、 単純なレベルのセットも定義します。
  • RASITraceEvent インターフェースには、単純なレベルのセットを好むユーザーを対象に、TYPE_LEVEL1TYPE_LEVEL2、および TYPE_LEVEL3 が用意されています。 WebSphere インプリメンテーションは、このレベルのセットをサポートしています。 レベルは階層になっており、レベル 2 を使用可能にすると、 レベル 1 も使用可能になり、レベル 3 を使用可能にすると、レベル 1 および 2 も使用可能になります。
  • RASITraceEvent には、OR 演算可能な、 より複雑な値のセットを好むユーザーを対象に、TYPE_APITYPE_CALLBACKTYPE_ENTRY_EXITTYPE_ERROR_EXCTYPE_MISC_DATATYPE_OBJ_CREATETYPE_OBJ_DELETETYPE_PRIVATETYPE_PUBLICTYPE_STATIC、および TYPE_SVC が用意されています。

これらのトレース・イベント・タイプは、以下のように、 ネイティブ・トレース・タイプ上にマップされます。

JRas RASITraceEvent レベル・タイプへの WebSphere Application Server トレース・タイプのマッピング
WebSphere Application Server のネイティブ・タイプ JRas RASITraceEvent レベル・タイプ
イベント (Event) TYPE_LEVEL1
EntryExit TYPE_LEVEL2
デバッグ TYPE_LEVEL3
JRas RASITraceEvent 列挙タイプへの WebSphere Application Server トレース・タイプのマッピング
WebSphere Application Server のネイティブ・タイプ JRas RASITraceEvent 列挙タイプ
イベント (Event) TYPE_ERROR_EXC、TYPE_SVC、TYPE_OBJ_CREATE、TYPE_OBJ_DELETE
EntryExit TYPE_ENTRY_EXIT、TYPE_API、TYPE_CALLBACK、TYPE_PRIVATE、TYPE_PUBLIC、TYPE_STATIC
デバッグ TYPE_MISC_DATA

単純にするため、 トレース・タイプ方法のどれか 1 つをアプリケーション全体を通して一貫して使用することを お勧めします。 また、レベルでないタイプを使用する場合は、 各カテゴリーから 1 つのタイプを選択し、混乱を避けるために、 選択したタイプをアプリケーション全体を通して一貫して使用します。

メッセージとトレースのパラメーター

各種のメッセージ・ロギングおよびトレース・メソッド・シグニチャー は、ObjectObject[]、および Throwable のパラメーター・タイプを受け入れます。 WebSphere Application Server は、以下のようにさまざまなパラメーター・タイプを処理およびフォーマットします。
Primitives
int や long などの Primitives は、Object タイプのサブクラスとして 認識されず、これらのいずれかのメソッドに直接渡すことはできません。 プリミティブ値は、パラメーターとして渡す前に 適切な Object タイプ (Integer、Long) に変換する必要があります。
Object
オブジェクト上で toString() メソッドが呼び出され、結果の String が表示されます。 メッセージ・ロギングまたはトレース・メソッドに渡されたオブジェクトに、toString メソッドを適切に実装する必要があります。 呼び出し元 は、toString メソッドがパスワードなどの機密データを平文で表示しないこと、および無限再帰を起こさないことを保証する責任があります。
Object[]
Object[] タイプは、複数のパラメーターがメッセージ・ロギングまたはトレース・メソッドへ渡される場合を想定して用意されています。 配列内の各 Object 上で toString メソッドが呼び出されます。 ネストされた配列は処理されません。つまり、Object 配列内のエレメントは配列に属しません。
Throwable
Throwable タイプのスタック・トレースが検索および表示されます。
Array of primitives
byte[]int[] などのプリミティブの配列は、Object として 認識されますが、Java コードでは Object の 2 番目のいとこのように扱われます。 通常は、可能であればプリミティブの配列は使用しません。 プリミティブの配列が渡されると、結果は不定のものとなり、 渡された配列のタイプ、配列を渡すために使用された API、および製品のリリースによって変化する場合があります。 一貫性のある結果を求める場合は、ユーザー・コードにより、 プリミティブ配列をプリプロセスし、ストリング形式のタイプにフォーマットしてからメソッドに渡す必要があります。 このようなプリプロセスが実行されない場合は、以下のような問題が発生する可能性があります。
  • [B@924586a0b - このメッセージは、ロケーション X でバイト配列として復号されます。このメッセージは、通常、配列が Object[] タイプのメンバーとして渡される際に戻され、byte[] タイプで toString メソッドが呼び出された結果として表示されます。
  • 正しくないトレース引数 : long の配列。 この応答は、通常、プリミティブの配列が Object を取るメソッドに渡される際に戻されます。
  • 01040703: バイトの配列の 16 進表記。 この問題は、通常、バイト配列が単一の Object を取るメソッドへ渡される際に発生することがあります。 この振る舞いは、変更の対象となり、信頼することはできません。
  • "1" "2": int[] タイプのメンバーのストリング表記で、 各エレメントを整数に変換し、その整数上で toString メソッドを呼び出すことによって形成されます。 この振る舞いは、変更の対象となり、信頼することはできません。
  • [Ljava.lang.Object;@9136fa0b : オブジェクトの配列。 この応答は、通常、ネストされた配列を含んでいる配列が渡される際に見られます。

メッセージ・ロギングの制御

WebSphere Application Server ログへメッセージを書き込むには、 メッセージ・タイプが 3 つのレベルのフィルター操作またはスクリーニングを通過することが必要です。
  1. このメッセージ・イベント・タイプは、RASIMessageEvent インターフェースで定義されたメッセージ・イベント・タイプのいずれかでなければなりません。
  2. このメッセージ・イベント・タイプのロギングは、 メッセージ・ロガーのマスクの状態によって使用可能にしなければなりません。
  3. このメッセージ・イベント・タイプは、WebSphere Application Server ランタイムによって確立されたすべてのフィルター基準を通過しなければなりません。

Manager クラスから WebSphere Application Server ロガーを取得した場合、マスクの 初期設定では、すべてのネイティブ・メッセージ・イベント・タイプが WebSphere Application Server ハンドラーに転送されます。 メッセージ・ロガーのマスクの状態をプログラマチックに設定することにより、 ログに記録するメッセージを制御することが可能です。

製品の一部のエディションでは、ユーザーが指定したサーバー・プロセス用のメッセージ・フィルター・レベルがサポートされています。 このようなフィルター・レベルを設定すると、指定された重大度レベルのメッセージのみが、WebSphere Application Server に書き込まれます。 メッセージ・ロガーのマスク検査を通過するメッセージ・タイプは、WebSphere Application Server のフィルターで除外されることがあります。

トレースの制御

製品の各エディションは、トレースを使用可能または使用不可にするメカニズムを提供しています。 さまざまなエディションが、静的なトレースの使用可能化 (トレース設定は、サーバーが始動される前に指定されます)、 動的なトレースの使用可能化 (実行中のサーバー・プロセスのトレース設定を動的に変更することができます)、またはこの両方をサポートします。

トレース・レコードを WebSphere Application Server へ書き込むには、トレース・タイプが 3 つのレベルのフィルター操作またはスクリーニングを通過しなければなりません。
  1. このトレース・イベント・タイプは、RASITraceEvent インターフェースで定義されたトレース・イベント・タイプのいずれかでなければなりません。
  2. このトレース・イベント・タイプのロギングは、トレース・ロガーのマスクの状態によって使用可能にしなければなりません。
  3. このトレース・イベント・タイプは、WebSphere Application Server ランタイムによって設定されたすべてのフィルター基準を通過しなければなりません。

Manager クラスからロガーを取得した場合、マスクの初期設定では、すべてのトレース・タイプが抑制されます。 このルールの例外は、WebSphere Application Server ランタイムが、静的なトレースの使用可能化をサポートしており、 そのトレース・ロガーのデフォルト以外のトレース開始状態が指定されている場合です。 メッセージ・ロガーとは異なり、WebSphere Application Server は、 トレース・ロガーのトレース・マスクの状態を動的に変更することができます。 WebSphere Application Server は、RASITraceEvent インターフェースで定義された値に対応するトレース・ロガーのマスクの一部のみを変更します。 WebSphere Application Server は、ユーザー定義タイプとして使用中の可能性のあるマスクの未定義ビットの変更は行いません。

一部のプラットフォームで使用できる 動的なトレースの使用可能化機能が使用されている場合は、トレース状態の変更が、 アプリケーション・サーバー・ランタイムとトレース・ロガーのトレース・マスクの両方に反映されます。 ユーザー・コードにより、RASITraceEvent インターフェースで定義されている値に対応するトレース・マスク内のビットがプログラマチックに変更されると、トレース・ロガーのマスク状態とランタイム状態は非同期となり、予期しない結果が発生します。 したがって、RASITraceEvent インターフェースで定義されている値に対応するマスクのビットをプログラマチックに変更することはサポートされていません。




関連タスク
JRas フレームワークによるプログラミング
参照トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 7:44:53 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/rtrb_jrasmsgs.html