WMI イベント監視タスク
WMI イベント監視タスクは、Windows Management Instrumentation Query Language (WQL) イベント クエリを使用して対象のイベントを指定することにより、Windows Management Instrumentation (WMI) イベントを監視します。WMI イベント監視タスクは、次の目的で使用できます。
ファイルがフォルダに追加されたという通知を待機し、ファイルの処理を開始します。
サーバー上の利用可能なメモリが、指定した割合を下回った場合、ファイルを削除するパッケージを実行します。
アプリケーションのインストールを監視し、そのアプリケーションを使用するパッケージを実行します。
WMI イベント監視タスクは、次の方法で構成できます。
使用する WMI 接続マネージャを指定します。
WQL クエリの実行元を指定します。実行元には、タスクの外部の変数またはファイルを設定できます。また、クエリはタスクのプロパティ内に格納できます。
WMI イベントが発生したときにタスクが実行するアクションを指定します。イベント通知およびイベント後の状態のログが記録できます。または、WMI イベント、通知、およびイベント後の状態に関連する情報を提供する、Integration Services のカスタム イベントを発生させることができます。
イベントに対するタスクの応答方法を定義します。タスクは、イベントに応じて、成功または失敗するように構成できます。または、単にイベントを再度監視するように構成することもできます。
WMI クエリがタイムアウトしたときに、タスクが実行するアクションを指定します。タイムアウトとタイムアウト後の状態のログを記録できます。または、Integration Services のカスタム イベントを発生させ、WMI イベントのタイムアウトを示し、タイムアウトとタイムアウトの状態のログを記録できます。
タイムアウトに対するタスクの応答方法を定義します。タスクは成功または失敗するように構成できます。または、単にイベントを再度監視するように構成することもできます。
タスクがイベントを監視する回数を指定します。
タイムアウトを指定します。
監視元がファイルの場合、WMI イベント監視タスクは、ファイル接続マネージャを使用してファイルに接続します。詳細については、「フラット ファイル接続マネージャ」を参照してください。
WMI イベント監視タスクは、WMI 接続マネージャを使用して、WMI 情報を読み取るサーバーに接続します。詳細については、「WMI 接続マネージャ」を参照してください。
WQL クエリ
WQL は SQL 言語仕様の 1 つで、WMI イベント通知やその他 WMI 固有の機能をサポートする拡張機能が付いています。WQL の詳細については、MSDN ライブラリにある Windows Management Instrumentation のマニュアルを参照してください。
注意 |
---|
WMI クラスは、Windows のバージョンによって異なります。これらのサンプル クエリは、Windows XP では有効ですが、それより以前の Windows のバージョンでは有効でない可能性があります。 |
次のクエリは、CPU 使用率が 40% を超えた場合の通知を監視します。
SELECT * from __InstanceModificationEvent WITHIN 2 WHERE TargetInstance ISA 'Win32_Processor' and TargetInstance.LoadPercentage > 40
次のクエリは、ファイルがフォルダに追加された場合の通知を監視します。
SELECT * FROM __InstanceCreationEvent WITHIN 10 WHERE TargetInstance ISA "CIM_DirectoryContainsFile" and TargetInstance.GroupComponent= "Win32_Directory.Name=\"c:\\\\WMIFileWatcher\""
その他の関連タスク
Integration Services には、WMI 情報を読み取るタスクが含まれています。
このタスクの詳細については、次のトピックを参照してください。
WMI イベント監視タスクで使用できるカスタム ログ メッセージ
次の表は、WMI イベント監視タスクのカスタム ログ エントリの一覧です。詳細については、「パッケージへのログ機能の実装」および「ログ記録用のカスタム メッセージ」を参照してください。
ログ エントリ |
説明 |
---|---|
WMIEventWatcherEventOccurred |
タスクが監視しているイベントが発生したことを示します。 |
WMIEventWatcherTimedout |
タスクがタイムアウトしたことを示します。 |
WMIEventWatcherWatchingForWMIEvents |
タスクが WQL クエリの実行を開始したことを示します。このエントリには、クエリが含まれています。 |
WMI イベント監視タスクの構成
プロパティを設定するには SSIS デザイナから行うか、またはプログラムによって設定します。
SSIS デザイナで設定できるプロパティの詳細については、次のトピックのいずれかを参照してください。
SSIS デザイナでこれらのプロパティを設定する方法については、次のトピックを参照してください。
プログラムによる WMI イベント監視タスクの構成
プログラムによってこれらのプロパティを設定する方法については、次のトピックを参照してください。
|