普段、Windowsのイベントログはイベントビューアーで見るだけのものですが、今回はWindowsのコマンドプロンプトを使って、任意のイベントログを出力したいと思います。
一応、PowerShellでもできますが、そのお話は後ほど…。
EventCreateコマンドを知る
Windowsのコマンドプロンプトからイベントログを出力するには、[EventCreate]コマンドを使用します。
コマンド自体は使い方は簡単なのですが、オプションが多いので忘れないようにメモしておきます。
> EventCreate /L [ログの名前] /T [レベル] /SO "[ソース]" /ID [イベントID] /D "[メッセージ]"
基本的にオプションの記述方法は半角スペース区切りになっていますので、ソースやメッセージなどに半角スペースを使用したい場合は、ダブルクオーテーション(“)で囲んでください。
以下、オプションの説明になります。
オプション | 説明 |
---|---|
/L | ログの名前(Application、System等) |
/T | レベル(Information、Warning、Critical等)はイベントログの深刻度 |
/SO | ソースの名称 |
/ID | イベントIDを整数で指定する(制限あり) |
/D | イベントビューアーのメッセージ欄に表示される |
Windowsイベントログを出力する
それでは、実際に上記で説明した[EventCreate]コマンドを使って、Application(アプリケーション)のイベントログに出力してみたいと思います!
> EventCreate /L Application /T ERROR /SO "SourceName" /ID 100 /D "EventMessage"
このコマンドの実行結果が上記の画像のようになります。
ちなみに、コマンドプロンプト自体を管理者権限で実行していないと、以下のようなエラー出ます。
その他にも、任意のイベントログとは言え、ある程度制限があるので仕様をよく確認してください。
以上、お疲れ様でした!
- Original:https://minory.org/win-cmd-eventlog.html
- Source:Minory
- Author:管理者