Windows Server 2008 の [警告のタスク] の利用方法

こんにちは。

Windows テクノロジー サポートの永野です。

 

今日は、「Windows Server 2008 の [警告のタスク] で引数を正常に渡す方法について」です。

パフォーマンス モニタで監視中に一定のしきい値を超えた時に通知する機能があります。

これが [警告のタスク] です。

 

設定方法

--------

1. [信頼性とパフォーマンス モニタ] を起動し、[データ コレクト セット] - [ユーザー定義] の順に展開します。

2. [ユーザー定義] を右クリックし、[新規作成] - [データ コレクト セット] を選択します。

3. 名前を適切に入力した後、[手動で作成する] を選択し、[次へ] をクリックします。

4. [パフォーマンス カウンタの警告] を選択し、[次へ] をクリックします。

5. 監視するパフォーマンス カウンタを適切に設定し、[次へ]、[完了] の順でクリックします。

6. 作成されたデータ コレクト セットを選択します。

7. 右ペインの [DataCollector01] を右クリックし、[プロパティ] を選択します。

8. [警告のタスク] タブを選択し、実行するタスクとその引数を設定します。

 

ここまでが、設定方法になります。

次に実行するタスクを作成する必要があります。

 

タスクの作成

------------

1. [スタート] - [管理ツール] - [タスク スケジューラ] を選択します。

2. [タスク スケジューラ ライブラリ] - [Microsoft] - [Windows] の順に展開します。

3. [Windows] を右クリックし、[タスクの作成] を選択します。

4. セキュリティ オプションを適切に設定し、[操作] タブを選択します。

5. [新規] をクリックします。

6. [プログラム/スクリプト] に実行したいプログラムを設定します。

7. [引数の追加] に $(Arg0) と入力します。

 

これで、警告のタスクで設定した引数が、実行したいプログラムに渡されます。

 

ただ、この使い方では引数に特殊な文字を含む場合、スクリプト実行時に問題が発生します。

この問題は、タスクを以下の設定に変更することで、正常に渡すことが出来ます。

 

  実行するプログラム: c:\windows\system32\cmd.exe
引数の追加: /c <バッチファイルのフルパス> $(Arg0)

 

※ 警告のタスクで、渡したい引数ごとに "" で括る必要があります。

 

Windows Server 2003 と同様の挙動にするためには [引数の追加] を
以下のように変更する必要があります。

 

  /c ""実行するバッチプログラムのフルパス(※)" "$(Arg0)""

 

※ 警告のタスクで、渡したい引数を "" で括る必要がありません。

 

Windows Server 2003 から移行の際、ぜひ参考にしてください。