イベントログを取得するには、Get-EventLogを使用します。
構文
Get-EventLog [-LogName] <ログ名>
Get-EventLog [-List]
ログ名>
ログの一覧を取得する
Listパラメータでログの一覧を取得できます。
PS C:\work> Get-EventLog -List
Max(K) Retain OverflowAction Entries Log
------ ------ -------------- ------- ---
20,480 0 OverwriteAsNeeded 19,233 Application
512 7 OverwriteOlder 241 ESRV_SVC_WILLAMETTE
20,480 0 OverwriteAsNeeded 19,212 GoProDesktopApp
20,480 0 OverwriteAsNeeded 0 HardwareEvents
512 7 OverwriteOlder 0 Internet Explorer
20,480 0 OverwriteAsNeeded 0 Key Management Service
8,192 0 OverwriteAsNeeded 0 Media Center
128 0 OverwriteAsNeeded 56 OAlerts
512 7 OverwriteOlder 0 PreEmptive
20,480 0 OverwriteAsNeeded 24,609 Security
20,480 0 OverwriteAsNeeded 7,001 System
512 7 OverwriteOlder 0 TestLog
512 7 OverwriteOlder 0 USER_ESRV_SVC_WILLAMETTE
15,360 0 OverwriteAsNeeded 1,228 Windows PowerShell
LogName
LogNameにログ名を指定するとそのログのイベントログが表示されます。
PS C:\work> Get-EventLog -Newest 5 -LogName "Application"
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
19233 1 06 21:22 Information SecurityCenter 15 状態が Windows Defender から SECURITY_PRODUCT_STATE_ON に正常に更新されました。
19232 1 06 21:22 Information SecurityCenter 15 状態が Windows Defender から SECURITY_PRODUCT_STATE_ON に正常に更新されました。
19231 1 06 21:19 Information Windows Error Rep... 1001 障害バケット -693773534、種類 1...
19230 1 06 21:18 0 Software Protecti... 1073742727 ソフトウェア保護サービスが停止されました。...
19229 1 06 21:18 Information Software Protecti... 1073758208 ソフトウェア保護サービスの 2116-12-13T12:18:54Z の再起動をスケジュールしました。理由: RulesEngine。
この例では、Newestパラメータで直近5件のApplicationイベントログを表示しています。
EntryType
EntryTypeパラメータでエントリタイプを指定できます。
PS C:\work> Get-EventLog -LogName "System" -EntryType "Error"
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
6998 1 06 21:18 Error Service Control M... 3221232506 NVIDIA Update Service Daemon サービスは予期せぬ原因により終了しました。このサービスの強制終了は 1 回目です。
6996 1 06 21:14 Error DCOM 10016 ソース 'DCOM' のイベント ID '10016' の説明が見つかりません。必要なレジストリ情報またはメッセージを表示するメッセージ DLL ファイルがローカル コンピューターに存在しない可能性があります...
6967 1 05 20:24 Error DCOM 10016 ソース 'DCOM' のイベント ID '10016' の説明が見つかりません。必要なレジストリ情報またはメッセージを表示するメッセージ DLL ファイルがローカル コンピューターに存在しない可能性があります...
6944 1 04 21:00 Error DCOM 10016 ソース 'DCOM' のイベント ID '10016' の説明が見つかりません。必要なレジストリ情報またはメッセージを表示するメッセージ DLL ファイルがローカル コンピューターに存在しない可能性があります...
6936 1 04 20:40 Error BugCheck 1073742825 ソース 'BugCheck' のイベント ID '1073742825' の説明が見つかりません。必要なレジストリ情報またはメッセージを表示するメッセージ DLL ファイルがローカル コンピューターに存在しない可能性が...
6934 1 04 20:39 Error Service Control M... 3221232473 NetTcpActivator サービスは、次のエラーが原因で開始できなかった NetTcpPortSharing サービスに依存しています: ...
・・・
この例では、SystemイベントログからEntryTypeが「Error」のものだけ表示しています。
Messageに特定の単語が含まれるイベントログを取得する
Messageパラメータを使うことによって、Messageに特定の単語が含まれるイベントログを取得することが出来ます。
PS C:\work> Get-EventLog -LogName "Application" -Message "*failed*"
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
18850 1 04 20:39 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
18516 1 03 18:24 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
18301 1 03 14:28 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
18119 1 03 00:47 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
17935 1 02 23:19 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
17467 12 29 10:05 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
16614 12 22 21:29 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
16607 12 22 21:29 Error DbxSvc 3221356814 Filter Unload failed with: (-2145452013) 指定されたフィルターが見つかりませんでした。
16092 12 18 11:41 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
15915 12 18 02:10 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
15645 12 17 08:09 Error DbxSvc 3221356864 Failed to connect to the driver: (-2147024894) 指定されたファイルが見つかりません。
15612 12 17 08:48 Information MsiInstaller 11729 Product: Google Update Helper -- Configuration failed.
・・・
この例では、Messageに「failed」が含まれるイベントログを表示しています。
指定の期間のイベントログを取得する
AfterパラメータとBeforeパラメータを使って指定した期間のイベントログを取得できます。
PS C:\work> $Dec15 = Get-Date "2016/12/15"
PS C:\work> $Dec20 = Get-Date "2016/12/20"
PS C:\work> Get-EventLog -LogName "Application" -After $Dec15 -Before $Dec20
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
16445 12 19 22:38 Information Microsoft-Windows... 1530 レジストリ ファイルは他のアプリケーションまたはサービスで使用されています。ファイルはすぐにアンロードされます。レジストリ ファイルを保持しているアプリケーションまたはサービスはこれ以...
16444 12 19 22:38 Information Desktop Window Ma... 1073750851 デスクトップ ウィンドウ マネージャー セッション ポートを登録しました。
16443 12 19 21:53 Information Windows Error Rep... 1001 障害バケット 91225693967、種類 5...
16442 12 19 21:53 Error SideBySide 3238068257 "C:\Program Files (x86)\Windows Kits\10\bin\arm\signtool.exe.Manifest" のアクティブ化コンテキストの生成に失敗しました。...
16441 12 19 21:53 Error SideBySide 3238068257 "C:\Program Files (x86)\Windows Kits\10\bin\arm64\signtool.exe.Manifest" のアクティブ化コンテキストの生成に失敗しました。...
16440 12 19 21:53 Error SideBySide 3238068257 "C:\Program Files (x86)\Windows Kits\10\bin\arm64\filetypeverifier.exe" のアクティブ化コンテキストの生成に失敗しました。...
・・・
この例では、Applicationログの中から、日付が2016/12/15~2016/12/19までの期間のイベントログを取得しています。
注意してほしいのは、Beforeで指定している日付より前までのイベントログが取得されることです。つまりBeforeで指定した日付は含まれなということです。