スクリプト3 イベントログに書き込まれたらすぐにメールで送信する
第3回で紹介した2つのスクリプトを組み合わせて、監視業務にすぐにでも使えるスクリプトを仕立てましょう。具体的にはWindowsのイベントログを監視し、その状態変化に応じてメールでシステム管理者に通知するというものです。
イベントログはシステム管理者にとって重要な情報源です。しかし通常は、管理者が自らWindowsログを参照してチェックしなければなりません。そのため、どうしても不調を利用者が感じたあとに参照して、トラブルの要因を探るような形となり、対策が後手に回りがちです。リアルタイムで不調の発生を知るには、何かしらの仕組みが必要となります。
そこで「プロセス監視」と「Gmailを使ってメールを送信する」のスクリプトを組み合わせて、イベントログをリアルタイムで取得するスクリプトを作ります。Power-ShellのRegister-WmiEventコマンドを使うと、イベントの発生をリアルタイムに取得できます。
イベントログを監視する
イベントログへの記録発生を知るにはRegister-WmiEventコマンドにWMIのクラス「__InstanceCreationEvent」を指定します。ここでは監視するイベントを識別するために、SQL風味のクエリー文を使用します(図3-10)。