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

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

ロギングの JRas プログラミング・インターフェース (非推奨)

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

一般的な考慮事項

WebSphere Application Server は、Java 2 セキュリティーを使用して、 ファイル・システムやソケットなどの保護リソースへのアクセスを制限するように構成することができます。 一般に、ユーザー作成拡張機能は、そのような保護リソースにアクセスするため、 ユーザー作成拡張機能には、AccessController doPrivileged 呼び出しを使用する適切なセキュリティー検査呼び出しが含まれていなければなりません。 さらに、ユーザー作成拡張機能には、 適切なポリシー・ファイルが含まれている必要があります。 通常、ユーザー作成拡張機能は別のパッケージに置くことをお勧めします。 ユーザー作成拡張機能へのアクセスを適切に制限するのは、プログラマーの責任です。

ハンドラーの作成

ユーザー作成ハンドラーは、 RASIHandler インターフェースを実装する必要があります。 RASIHandler インターフェースは、RASIMaskChangeGenerator インターフェースを拡張します。 この RASIMaskChangeGenerator インターフェースは RASIObject インターフェースを拡張します。 ここから、これらの各インターフェースによって導入されるメソッドについて簡単に説明し、実装におけるガイドを記載します。 特定のインターフェースまたはメソッドについての詳細な説明は、該当する製品の API 文書を参照してください。

RASIObject インターフェース

RASIObject インターフェースは、 スタンドアロンの JRas ロギング・ツールキット・クラスの基本インターフェースです。 これらのクラスには、ロガー、ハンドラー、フォーマッターなどがあり、ステートフルであるか、構成可能です。
  • スタンドアロンの JRas ロギング・ツールキットは、 プロパティー・ファイルに基づく基本的な構成をサポートします。 この構成サポートを実装するために、 構成状態をキーと値のペアのセットとしてプロパティー・ファイルに保管します。 構成状態を取得および設定するには、public Hashtable getConfig メソッドおよび public void setConfig(Hashtable ht) メソッドを使用します。 JRas 拡張は、プロパティーに基づく構成をサポートしていません。 これらのメソッドは、ノーオペレーションとして実装します。 これらのメソッドを使用して、プロパティーに基づく独自の構成を実装できます。
  • ロガー、ハンドラーおよびフォーマッターは、名前付きオブジェクトにすることができます。 例えば、JRas 拡張では、ユーザーはマネージャーから検索するロガーに名前を指定する必要があります。 自分のハンドラーに名前を付けることもできます。public String getName メソッドおよび public void setName(String name) メソッドは、名前フィールドを取得または設定するためのメソッドです。 現在、JRas 拡張は、ユーザーのハンドラーのメソッドを呼び出しません。 必要に応じて、ノーオペレーションを含め、これらのメソッドをインプリメントすることができます。
  • ロガー、ハンドラー、およびフォーマッターには、説明フィールドを含むこともできます。 public String getDescription メソッドおよび public void setDescription(String desc) メソッドを使用すると、説明フィールドを取得または設定できます。 現在、JRas 拡張は、説明フィールドを使用しません。 必要に応じて、ノーオペレーションを含め、これらのメソッドをインプリメントすることができます。
  • public String getGroup メソッドは、RASManager インターフェースで使用するために提供されています。 JRas 拡張には、独自の Manager クラスがあるため、このメソッドが呼び出されることはありません。これは、ノーオペレーションとして実装します。

RASIMaskChangeGenerator インターフェース

RASIMaskChangeGenerator インターフェースは、 マスク状態に基づいてイベントをフィルターに掛けるための実装メソッドを定義するインターフェースです。 現時点でこのインターフェースは、ロガーとハンドラーの両方によって実装されます。 定義により、このインターフェースをインプリメントするオブジェクトには、 メッセージ・マスクとトレース・マスクの両方が含まれますが、両方を使用する必要はありません。 例えば、メッセージ・ロガーにはトレース・マスクが含まれますが、 メッセージ・ロガーはトレース・イベントを生成しないため、トレース・マスクは使用されません。 ただし、ハンドラーは、積極的に両方のマスク値を使用します。 例えば、ハンドラーは単体で、メッセージ・イベントとトレース・イベントの両方を処理できます。

さらに、このインターフェースでは、マスクの状態が変化したときに、関係者へコールバック するという概念も導入されています。 コールバック・オブジェクトは、RASIMaskChangeListener インターフェースを実装する必要があります。

効率を良くするため、JRas 拡張メッセージおよびトレース・ロガーは、RASIMaskChangeListener インターフェースを実装しています。 ロガー実装は、ロガーのマスクのほかに、複合マスクを保守します。 ロガーの複合マスクは、そのロガーに登録されるすべてのハンドラーの該当するマスクを論理 OR 演算し、結果をロガーのマスクと AND 演算することによって形成されます。 例えば、メッセージ・ロガーの複合マスクは、そのロガーに登録されたすべてのハンドラーのメッセージ・マスクを OR 演算し、結果をロガーのメッセージ・マスクと AND 演算することにより形成されます。

これらのメソッドを正しく実装するためには、すべてのハンドラーが必要です。 さらに、ユーザー・ハンドラーのインスタンスが生成されるときに、追加されるロガーを、 addMaskChangeListener メソッドを使用してハンドラーに登録する必要があります。 ハンドラーのメッセージ・マスクまたはトレース・マスクのいずれかが変更されると、 ロガーをコールバックして、そのロガーにマスク変更を通知する必要があります。 このプロセスにより、ロガーは複合マスクを動的に保守することができます。

RASMaskChangedEvent クラスは、スタンドアロンの JRas ロギング・ツールキットによって定義されます。 このコンテキストでは、ユーザー・コードによりこのクラスを直接使用することがサポートされています。

さらに、RASIMaskChangeGenerator インターフェースでは、実装するオブジェクトによって処理されるすべてのメッセージ・イベント・クラスとトレース・イベント・クラスの名前をキャッシュするという概念が導入されています。 これらのメソッドの目的は、GUI などの管理プログラムが名前のリストを検索し、そのクラスをイントロスペクトして、クラスが処理する可能性のあるイベント・タイプを判別し、結果を表示できるようにするのをサポートすることです。 JRas 拡張はこれらのメソッドを呼び出さないため、これらのメソッドをノーオペレーションとして実装することができます。

RASIHandler インターフェース

RASIHandler インターフェースは、 ハンドラーの振る舞いに特有のメソッドを導入しています。

スタンドアロンの JRas ロギング・ツールキットにより提供される RASIHandler インターフェースは、同期モードまたは非同期モードのいずれかで実行されるハンドラーをサポートしています。 一般に、非同期モードでは、イベントは呼び出しスレッドによりキューに入れられ、 ワーカー・スレッドにより書き込まれます。 スレッドの作成は WebSphere Application Server 環境ではサポートされていないため、明示的に禁止されているわけではないものの、ハンドラーがイベントをキューに入れたり、バッチで実行したりすることはないと想定されています。

フォーマッターの作成

ユーザー作成フォーマッターは、 RASIFormatter インターフェースを実装する必要があります。 RASIFormatter インターフェースは、RASIObject インターフェースを拡張しています。 RASIObject インターフェースの実装は、ハンドラーとフォーマッターのどちらの場合でも同じです。 RASIFormatter インターフェースによって導入されるメソッドについて簡単に説明します。 このインターフェースによって導入されるメソッドの詳細な説明については、該当する製品の API 文書を参照してください。

RASIFormatter インターフェース




関連概念
JRas フレームワーク (非推奨)
関連タスク
JRas フレームワークによるプログラミング
関連資料
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_wrtextensions.html