次の方法で共有


管理イベント

ある状況または状況の組み合わせが発生したときにそれを検出し、イベントの通知をコンシューマに配信するという機能は、実際の分散システムにとって不可欠な機能です。それほど複雑でないシステムでも、使用できるデータ ソースをポーリングしてイベントを追跡や対処を行うのは不可能です。コンシューマへの負担も、扱うデータの量も大きくなり過ぎるからです。にもかかわらず、そのような処理を要求する管理アプリケーションは数多くあります。膨大な量のデータが集中化されたログに書き込まれ、その後そのログで状況の組み合わせをチェックして、なんらかのアクション、たとえば請求、安全点検、バックアップなどの実行が必要かどうかを調べることができます。

WMI は、イベント処理インフラストラクチャを多数サポートします。このインフラストラクチャを使用すると、アプリケーションで必要とされる状況の組み合わせに応じて、イベントの公開、フィルタ処理、サブスクライブ、ログの取得ができます。WMI のイベント処理機能はすべて、監視や制御ができる標準 WMI 表現を使用して構成されるため、WMI は自身を管理および構成できます。WMI では、イベント、パブリケーション、およびサブスクリプションは WMI オブジェクトを使用して表されるため、通常の WMI クラスやインスタンスでサポートされているのと同じ機構を使用してソースおよびコンシューマに配信できます。

また WMI では、コンシューマがサブスクライブしているイベントが発生するたびに呼び出される永続イベント コンシューマをユーザーが定義することもできます。サーバー上の重大なイベントは、時間も含めてすべて WMI から参照できます。それによって、"毎晩午後 11 時、またはデータベースの再起動時にシステム構成をバックアップする。ただし 8 時間以内に 2 回以上のバックアップはしない" というような条件を WMI 永続イベント コンシューマに組み込むことができます。WMI 永続イベント コンシューマを使用すると、どのような組み合わせのアクションも、環境内でイベントが発生した結果として開始できます。永続イベント コンシューマに条件を組み込むことができるため、データ ストリームが決定やアクションのために上位レベルのコンシューマにプッシュされる必要がないようなシステムを構築できます。データ ストリームはシステム自体によってローカルで処理され、アーキテクチャの上位レベルにはステータス イベントだけをプッシュするだけで済みます。

参照

.NET Framework での WMI の使用 | スキーマ | クエリ | System.Management 名前空間と System.Management.Instrumentation 名前空間