Windows XP、Windows Server 2003にはEVENTQUERY.vbsというVBSファイルが既定でインストールされていて、これを利用するとイベントログに書き込まれたログが比較的簡単に摘出できます。
例えばアプリケーションのイベントログからイベントID”1004″のソース”BINLSVC”が出したログを詳細付きでリスト表示する場合には以下をコマンドプロンプトに入力します。
演算子の部分は分かりにくいけど、それぞれ
eq = equal(指定された値と比較して等しいか判定)
ne = notEquals(指定された値と比較して等しくないか判定)
ge = greaterEqual(指定された値と等しいか、もしくは大きいかを判定)
le = lessEqual(指定された値と等しいか、もしくは小さいか判定)
gt = greaterThan(指定された値と比較して大きいか判定)
lt = lessThan(指定された値と比較して小さいか判定)
となっています。
なので例えばイベントIDが1004の場合とするのであれば
と記載しますし、逆にイベントIDが1004以外とするのであれば
とするわけです。
日付を指定して自動的にイベントログを保存したい場合には以下のようなスクリプトを作ると便利です。物凄くつくりの雑なものですが、参考程度に・・・。
一応簡単に説明しておきますと、8日前から昨日までのアプリケーションのイベントログからイベントID”1004″のソース”BINLSVC”が出したログを詳細付きで表示します。以下の部分を変更すると範囲が変わります。
また、Windows Server 2003以降のOSでのみ実行できる方法ですが、実行結果が流れてしまってイライラする場合には
と実行する事により結果をクリップボードにコピーする事も出来ます。何気に覚えておくと便利ですよ。