ソースとレポーターのコンポーネントの識別
Common Base Event 内のコンポーネント識別フィールドは、システム内のどのコンポーネントでイベントによって記述された状態が発生しているのか (sourceComponentID)、どのコンポーネントがイベントを出しているのか (reporterComponentID) を示すために使用されます。
通常これらは同じコンポーネントで、この場合 sourceComponentID のみが示されます。
Common Base Event 内でこれら 2 つのエレメントを使用する場合には、いくつかの注およびシナリオがあります。
- sourceComponentID は、イベントによって記述される状態が発生しているコンポーネントを識別するするために、常時使用されます。
- reporterComponentID は、実際にイベントを作成し出力するコンポーネントを識別するために使用されます。
このエレメントは通常は、他のコンポーネントをモニターし、そのコンポーネントに関する操作情報を提供するコンポーネントによって出されたイベント内でのみ使用されます。
モニターしているコンポーネント (例えば、Tivoli® エージェントまたは
ハードウェア・デバイス・ドライバー) は reporterComponentID によって識別され、
モニターされているコンポーネント (例えば、モニター対象の
サーバーまたはハードウェア・デバイス) は sourceComponentID によって識別されます。
reporterComponentID を誤用する可能性としては、コンポーネントに イベント型変換または管理サービスを提供するコンポーネントを識別すること、 例えば、コンポーネントによって収集されたイベントを Common Base Event フォーマットに変換するアダプターを識別することなどです。 イベント型変換機能はコンポーネントの拡張機能と考えられ、別個のものとしては識別されません。
ソース・コンポーネント | レポーター・コンポーネント | 説明 |
---|---|---|
location locationType | コンポーネント・ロケーション | コンポーネントのロケーションを識別します。 |
component componentIdType | コンポーネント名 | コンポーネントのタイプと同じく、コンポーネントの資産名を識別します。 |
subcomponent | サブコンポーネント名 | コンポーネントの特定のパーツまたはサブコンポーネント、例えばソフトウェア・モジュールやハードウェア・パーツなどを識別します。 |
application | ビジネス・アプリケーション名 | コンポーネントがその一部であり、またサービス の提供対象である、ビジネス・アプリケーションまたはプロセスを識別し ます。 |
instanceId | 操作インスタンス | コンポーネントの操作インスタンス、つまり実際に実行中のコンポーネントのインスタンスを識別します。 |
processId threadId | 操作インスタンス | ソフトウェア・オペレーティング・システムの コンテキスト内のコンポーネントの操作インスタンス、すなわちイベントが作成されたときに実行されていた オペレーティング・システムのプロセスおよびスレッドを識別します。 |
executionEnvironment | 操作インスタンス コンポーネント・ロケーション | ソフトウェア・アプリケーションのオペレーティング・システム名、 Java™ 2 Platform, Enterprise Edition (J2EE) アプリケーションのアプリケーション・サーバー名、 またはハードウェア・パーツのハードウェア・サーバー・タイプなど、コンポーネントの操作 インスタンスをホスティングする環境の名前を識別することによって、コンポーネント の操作インスタンスまたはそのロケーションに関する追加情報を提供します。 |
Common Base Event 仕様 [CBE101] はこれらのフィールドの必要な
フォーマット上の情報を提供し、また Common Base Event Developer's Guide
[CBEBASE] は一般使用のガイドラインを提供します。
このセクションには、問題判別イベントのためにこれらのフィールドの
一部をフォーマットする方法および使用する方法についての追加情報が記述され、
他の文書での情報を明確にさらに詳しく説明しています。
- コンポーネント
- 問題判別イベント内のコンポーネント・フィールドは、イベントと関連した管理可能な資産を識別するために使用されます。
管理可能な資産は解釈に対して公開されていますが、良い作業定義という
のは、別々に取得または開発、デプロイ、管理、および保守されるハードウェアまたはソフトウェア・コンポーネントを表す管理可能な資産です。
標準的なコンポーネント名の例は以下のとおりです。
- IBM® eServer™ xSeries モデル x330
- IBM WebSphere® Application Server バージョン 5.1 (5.1 はバージョン番号です)
- コンポーネント用に内部で開発されたソフトウェア・アプリケーションの名前
- subComponent
- 問題判別イベント内のサブコンポーネント・フィールドは、イベントと関連したコンポーネントの特定のパーツを識別します。
サブコンポーネント名は、通常は管理可能な資産ではありませんが、コンポーネント内の
内部障害を診断する (すなわち、どのパーツが障害を起こしたのか) ときに内部の診断情報を提供します。
標準的なサブコンポーネントおよびその名前の例は以下のとおりです。
- サーバー・システム内の Intel Pentium プロセッサー (Intel Pentium IV プロセッサー)
- Web アプリケーション・サーバー内のエンタープライズ Bean コンテナー (エンタープライズ Bean コンテナー)
- オペレーティング・システム内のタスク・マネージャー (Linux Kernel Task Manager)
- Java クラスまたはメソッドの名前 (myclass.mycompany.com または myclass.mycompany.com.methodname)
- componentIdType
- componentIdType フィールドは、Common Base Event 仕様で必要となっているものですが、問題判別イベントには最小の価値しか持ちません。 多くの問題判別イベントの場合、componentIdType ではなく、アプリケーション・ フィールドで指定された値を使用することをお勧めします。 componentIdType フィールドは、コンポーネントのタイプを識別します。アプリケーションはアプリケーション・フィールドで識別されます。
- application
- アプリケーション・フィールドは Common Base Event 仕様内のオプション値 としてリストされますが、問題判別イベントにおいてこの値が使用可能な場合にはいつでもこの値を指定します。 これが問題判別イベントの必要フィールドではない理由は、 発行するコンポーネントがビジネス・アプリケーション全体を認識していない可能性のあるインスタンスが存在するということです。
- instanceId
- instanceId フィールドは Common Base Event 仕様内のオプション値
としてリストされますが、問題判別イベントにおいてこの値が使用可能な場合にはいつでもこの値を指定します。
ソフトウェア・コンポーネントが識別されているとき は instanceID を常時指定し、コンポーネントの操作インスタンスを 識別します (例えば、インストール済みのソフトウェア・イメージの どの操作インスタンスが実際にイベントと関連しているのかなど)。 ハードウェア・コンポーネントが操作インスタンスの概念をサポートする場合は、これらのコンポーネントにこの値を指定します。
指定される値のフォーマットはコンポーネントによって定義されていますが、 分析システム (人的またはプログラマチック) が識別されたコンポーネントの 特定の実行インスタンスを識別する際に使用できる値でなければなりません。 例:- IBM WebSphere Application Server 用のセル、ノード、サーバー名
- Java エンタープライズ Bean 用のデプロイされた EAR ファイル名
- ハードウェア・プロセッサーのシリアル番号
- processId
- processId フィールドは Common Base Event 仕様内のオプション値と してリストされますが、問題判別イベントにおいてこの値が使用可能かつ適用可能な場合にはいつでもこの値を指定します。 ソフトウェアにより生成されたイベントにはこの値を常時指定し、 イベント内で識別されたコンポーネントと関連したオペレーティング・システム・プロセスを識別します。 スレッド ID のフォーマットを、オペレーティング・システム (または Java 仮想マシンのようなその他の実行環境) のフォーマットと一致させます。 このフィールドは通常は、ハードウェア (例えば、ファームウェア) によって出力されたイベントに対して適用されないかあるいは使用されません。
- threadId
- threadId フィールドは Common Base Event 仕様内のオプション値と してリストされますが、問題判別イベントにおいて使用可能かつ適用可能な場合にはいつでもこの値を指定します。 ソフトウェアにより生成されたイベントには常時指定し、イベントが検出されるかあるいは発行されたときにアクティブなオペレーティング・システム・スレッドを識別します。 この推奨の注意すべき例外は、一部のオペレーティング・システムまたは実行環境では、スレッドをサポートしていないということです。 スレッド ID のフォーマットを、オペレーティング・システム (または Java 仮想マシンのようなその他の実行環境) のフォーマットと一致させます。 このフィールドは通常は、ハードウェア (例えば、ファームウェア) によって出力されたイベントに対して適用されないかあるいは使用されません。
- executionEnvironment
- コンポーネントが固有のソフトウェア・アプリケーションである場合のオペレーティング・システムの名前。
- コンポーネントが Java 2 Platform, Standard Edition (J2SE) アプリケーションである場合のオペレーティング・ システム/Java 仮想マシンの名前。
- コンポーネントがサーブレットである場合の Web サーバー名。
- コンポーネントがポートレットである場合のポータル・サーバー名。
- コンポーネントがエンタープライズ Bean である場合のアプリケーション・サーバー名。