WebSphere Application Server for i5/OS, Version 6.1   
             オペレーティング・システム: i5/OS

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

JRas 拡張クラス

WebSphere Application Server には、実装クラスの基本セットが用意されており、まとめて JRas 拡張 と呼ばれます。 これらのクラスの多くは、WebSphere Application Server 環境で使用するロガー、 ハンドラーおよびフォーマッターの適切な実装を提供します。

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

JRas クラスの コレクションは、統合モードでのオペレーションをターゲットとしています。 スタンドアロン・モードまたは結合モードのいずれかで JRas 拡張を使用する場合は、 拡張により提供されるロガーおよびマネージャー・クラスを再利用できますが、 独自のハンドラーおよびフォーマッターの実装を用意する必要があります。

WebSphere Application Server のメッセージ・ロガーおよびトレース・ロガー

スタンドアロン JRas ロギング・ツールキットにより提供されるメッセージ・ロガーおよびトレース・ロガーを、 直接 WebSphere Application Server 環境で使用することはできません。 JRas 拡張は、該当するロガー・インプリメンテーション・クラスを提供します。 これらのメッセージ・ロガー・クラスとトレース・ロガー・クラスのインスタンスは、 WebSphere Application Server Manager クラスから直接かつ排他的に取得されます。 メッセージ・ロガーとトレース・ロガーを直接インスタンス化することはできません。 Manager クラスから直接取得する以外、いずれの方法でもロガーを取得することはできず、プログラミング・モデルに直接違反します。

WebSphere Application Server Manager クラスから取得されるメッセージ・ロガー・インスタンスおよびトレース・ロガー・インスタンスは、 スタンドアロン JRas ロギング・ツールキットにより提供される RASMessageLogger クラスおよび RASTraceLogger クラスのサブクラスです。 RASMessageLogger クラスおよび RASTraceLogger クラスは、 直接使用可能なメソッドのセットを定義しています。 JRas 拡張ロガー・サブクラスによって導入される public メソッドは、プログラミング・モデル違反となるため、ユーザー・コードで直接呼び出すことはできません。

ロガーは、名前付きオブジェクトであり、名前で識別されます。 ロガーを取得するために Manager クラスが呼び出されると、 呼び出し元はロガーの名前を指定する必要があります。 Manager クラスは、名前からロガーへのインスタンスのマッピングを保守します。 名前付きロガーのインスタンスは、プロセスの存続期間中に 1 つだけ作成されます。 特定の名前を持つ Manager クラスを最初に呼び出すと、ロガーが作成され、これは Manager クラスによって構成されます。 Manager クラスは、インスタンスへの参照をキャッシュに入れ、 その後、それを呼び出し元に戻します。 それ以後は、同じ名前を指定する Manager クラスを呼び出すと、 キャッシュされたロガーへの参照が戻されます。 メッセージおよびトレース・ロガー用に別々のネーム・スペースが保守されます。 単一の名前を使用して、あいまいさを伴わず、 また、ネーム・スペースの衝突を起こさずに、 Manager からメッセージ・ロガーとトレース・ロガーの両方を取得できます。

一般に、ロガーには、細分性や有効範囲は事前に定義されていません。 単一のロガーを使用して、アプリケーション全体を計測することもできます。 クラスごとにロガーを持つことがより効果的である、または適切な細分性がその間のどこかにあると判断できる場合があります。 アプリケーションの複数ロギング・ドメインへの分割は、アプリケーションの作成者により決定されます。

Manager クラスから取得される WebSphere Application Server ロガー・クラスは、スレッド・セーフです。 スタンドアロン JRas ロギング・ツールキットの一部として提供されるロガーは、 シリアライズ可能なインターフェースを実装しますが、ロガーはシリアライズ可能ではありません。 ロガーはステートフル・オブジェクトで、Java 仮想マシン・インスタンスに結合されており、 シリアライズ可能ではありません。 ロガーをシリアライズしようとすることは、プログラミング・モデル違反になります。

個人用のロガー・サブクラスは、WebSphere Application Server 環境ではサポートされていません。

WebSphere Application Server ハンドラー

WebSphere Application Server は、メッセージおよびトレース・イベントを WebSphere Application Server のランタイム・ログに書き込むために使用する、所要の Handler クラスを提供します。 WebSphere Application Server ハンドラーを構成して、他の宛先に書き込むことはできません。 WebSphere Application Server ハンドラーの作成操作には制限があり、ユーザー・コードでは実行できません。 Manager から取得される各ロガーは、 このハンドラーのインスタンスが既にインストール済みの状態で事前に構成されています。 スタンドアロン・モードで実行する場合は、 ユーザーは、ロガーから WebSphere Application Server ハンドラーを除去することができます。 WebSphere Application Server ハンドラーを除去した後、再びこれを元のロガーに (または他のどのロガーにも) 追加することはできません。 また、WebSphere Application Server ハンドラーのメソッドを直接呼び出すこともできません。 WebSphere Application Server ハンドラーのインスタンスを作成したり、 WebSphere Application Server ハンドラーのメソッドを呼び出したり、 ユーザー・コードを使用して WebSphere Application Server ハンドラーをロガーに追加したりすることは、 プログラミング・モデル違反になります。

WebSphere Application Server フォーマッター

WebSphere Application Server ハンドラーは、 WebSphere Application Server ログに書き込まれるデータ用に、 適切なフォーマッターによって事前に構成されています。 WebSphere Application Server フォーマッターの作成操作には制限があり、 ユーザー・コードでは実行できません。 ユーザーが、WebSphere Application Server ハンドラーにインストールされたフォーマッターへの参照を取得したり、 あるいは WebSphere Application Server ハンドラーが使用するように構成されているフォーマッターを変更できるようなメカニズムは、存在しません。

WebSphere Application Server Manager

WebSphere Application Server では、com.ibm.websphere.ras パッケージで Manager クラスを提供しています。 メッセージ・ロガーおよびトレース・ロガーは、すべてこの Manager クラスから取得する必要があります。 Manager クラスへの参照は、静的 Manager.getManager メソッドを呼び出すことにより取得されます。 メッセージ・ロガーは、Manager クラスで createRASMessageLogger メソッドを呼び出すことにより取得されます。 トレース・ロガーは、Manager クラスで createRASTraceLogger メソッドを呼び出すことにより取得されます。

また、マネージャーは、トレース・ロガーを扱うときに役立つ、グループ の抽象化もサポートしています。 グループの抽象化では、複数の関連しないトレース・ロガーを、グループ と呼ばれる名前付きエンティティーの一部として登録することがサポートされています。 WebSphere Application Server には、 個人用のトレース・ロガーのトレース設定と同様な方法で、 グループのトレース設定を操作するための適切なシステム管理機能が用意されています。

例えば、コンポーネント A が 10 のクラスで構成されているとします。 各クラスは、別々のトレース・ロガーを使用するように構成されていると想定します。 コンポーネント内の 10 のトレース・ロガーがすべて同じグループ、例えば Component_A_Group のメンバーとして登録されています。 コンポーネント・トレースが必要な場合は、単一クラスに対してトレースをオンにすることも、 グループ名を使用して、1 回の操作で 10 のクラスすべてに対してトレースをオンにすることもできます。 グループ名は、トレース・ロガーのネーム・スペース内で保守されます。




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

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

最終更新: Jan 21, 2008 5:46:14 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.iseries.doc/info/iseries/ae/rtrb_xtndjras.html