Windowsでサービスは上がってるのに応答がない時に使います。中々使うことがなく、解説も古いものばかりだったので、備忘的に書いてみました。
すでにトリガーは設定済みとして。
今回のサンプルはサービス名を"Service Name"とします。
トリガー名を"Service Name Down"とします。
1.スクリプトの作成
a.管理からスクリプトを開きます。右上の「スクリプトの作成」をクリックします。
b.名前などの入力
名前は適当につけてください。
範囲は「アクション処理」です。
タイプは「スクリプト」です。
コマンドは「c:\windows\system32\net.exe stop "Service Name" & c:\windows\system32\net.exe stop "Service Name"」
ダブルクォーテーションをお忘れなく。
「追加」をクリックしてスクリプトの作成は完了です。
2.アクションの登録
a.設定からアクション→トリガーアクションを開きます。右上の「アクションの作成」をクリックします。
b.名前などの入力
名前はやっぱり適当につけてください。
実行条件も適当に設定しますが、大体この画面の通りのようになるかと思います。
トリガーを直接選ぶ方が安全ですが、トリガーを探してくるのが面倒です。
一長一短ですね。
c.実際の実行設定です。上の実行内容をクリックします。
デフォルトのアクション実行ステップの間隔をお好みで設定します。
私はあまりシビアにしたくないので、5mとしています。つまりまずは5分待ってみようと。
d.実際のアクションを入力します。実行内容の追加をクリックします。
まずは再起動がかかったことをメールで通知したいので、上記のように設定しました。
ステップが2から始まっているのは最初のトリガーが1なので、
2からやるとトリガー発生から5分待ってくれるためです。ですので、検知が5分間隔だと、最大で10分待つことになりますが、その程度のサービスだということの裏返しですね。
あとはメールを送る設定をしておきます。長くなるので、メッセージのカスタマイズの内容は割愛します。
e.1.で設定したスクリプトを登録します。実行内容の追加をクリックします。
処理内容のリストに実行できるアクションが入っているので選択します。
ステップはメッセージと同じように2から5にしています。3回も4回も再起動して上がらないなら、
サービスの再起動では直らないと思いますので、ステップ5で止めています。
現在のホストというのが障害が発生したホストです。
他のホストで実行する場合はホストやホストグループに入れてください。
感覚だけでいうとその場合は再起動は1度にするのが安全だと思います。
「追加」「追加」で戻って終わりです。かならず、テストを忘れずに。