Say Tech Co Jp Yamanxworld 2026vol211
Windowsイベントトリガータスクでイベント値を変数として引数に渡す方法
- URL: https://www.say-tech.co.jp/contents/blog/yamanxworld/2026vol211
- 日付: 2026-06-18
- Tier: Tier 2
- 要旨: Windows Server/クライアントのタスクスケジューラにおいて、イベントログのイベントID・プロバイダー・サービス名・タイムスタンプ等をGUIでは設定できない変数($(値の名前)形式)として引数に渡す方法を解説。タスクをXMLにエクスポートし、
<ValueQueries>タグでXPATH式と変数名を定義し、<Arguments>タグ内で参照させてインポートする手順。
詳細
手順概要
- タスクスケジューラでイベント時トリガータスクをXMLファイルにエクスポート
<EventTrigger>タグ内に<ValueQueries>タグを追加- XPATH式(Event/System/EventID等)と変数名(name=“EventID"等)を定義
<Exec>の<Arguments>内で$(EventID)のように参照- 元のタスクを削除し、編集後のXMLをインポートして復元
実用例(サービス開始/停止イベントID 7036)
日時(UTC)・EventID・Provider・Source・Level・サービス名・状態の7変数をPowerShellスクリプトに渡す設定が示されている。
補足
パフォーマンスモニターのデータコレクターセットもタスクスケジューラと連動可能(詳細は次号)。かつてあった「電子メールの送信」アクションは廃止済みで、現在はPowerShell等を経由する必要がある。メール送信が必要な場合は、Microsoft 365のOAuth2認証に対応した専用ツールの導入が実用的と著者は述べている。