1月初っ端からインフルにかかり、先月は先月で更新が出来ずにいました。
ほぼ2ヶ月ぶりに更新していきたいと思います。
今回はWindowsServer周りの話です。
監視関連のテストで、監視設定をしている任意のイベントログについて、出力させて見て検知できるか
というテストをやることになったのですが、イベントログってどうやってテスト的に出力させるのかわからなかったので調べてみました。
まず、コマンドプロンプトから出力させるか、PowerShellから出力させるか等あるみたいですが、今回はPowerShellを使用しました。
「Write-EventLog」コマンドレットを使うようです。
主なオプションとしては以下となります。
-LogName 記録するイベントの種類を指定する
-Source 記録するイベントのソースを指定する
-EventId 記録するイベントのイベントID番号を指定する
-Message 記録するイベントの説明文を指定する
-EntryType 記録するイベントのレベルを指定する。省略可能
-Category 記録するイベントの「タスクのカテゴリー」を指定する。省略可能
-ComputerName イベントを記録するコンピュータ名を指定する。省略可能
コマンド例
Write-EventLog -LogName System-Source test1(ここはかなり種類があるので出力させたいものを指定) -EventID 999 -EntryType Error -Message test message
これで出力させたいイベントログを書き込むことが出来ます。中には指定ソースに該当する指定IDがなく、説明が見つかりませんと出力させる場合がありますが、
指定したメッセージは書き込まれていることは確認できると思います。
また、中にはイベントソースの指定はなく、ErrorやWarningの監視指定をしており、そのテストを実施したいということがあるかと思います。
(上記コマンドで指定したtest1は存在しないものとなりますので作成が必要となります。)
その場合は【 New-EventLog 】というコマンドを使用し、新しくソースを登録することで対応できるかと思います。
New-EventLogコマンドレットの主なオプションとしては以下となります。
-LogName 記録するイベントの種類を指定する
-Source 記録するイベントのソースを指定する
-ComputerName イベントを記録するコンピュータの名前を指定する。省略可能
-ParameterResourceFile イベントの説明を記したDLLファイルの名前を指定する。省略可能
最低「-LogName」「-Source」を指定すればソースが作成できます。
コマンド例
New-EventLog -LogName System -Source test1
これでSystemにtest1というイベントソースを作成出来ます。