wevtutilコマンドとは?
Windowsのイベントログを効率的に管理するためには、wevtutilコマンドラインツールが非常に役立ちます。
このツールは、イベントログのエクスポート、クエリ、アーカイブなど、多くの便利な機能を提供しています。
特に、イベントログをエクスポートする際には、wevtutilを使用して、特定の条件に基づいてログデータを抽出し、それを.evtx形式で保存することができます。
Wevtutilコマンドを使ったイベントログのエクスポート
イベントログのエクスポートは、システムの監視やトラブルシューティングにおいて重要な役割を果たします。
例えば、特定の期間に発生したイベントのみを抽出したり、特定のイベントIDに関連するログを集めたりすることが可能です。
これにより、システム管理者は必要な情報を迅速に取得し、問題の原因を特定しやすくなります。
wevtutilを使用する際の一般的なコマンドライン構文は以下の通りです:
wevtutil epl <ログ名> <出力ファイル名.evtx> /q:"<クエリ>"
ここで、`<ログ名>`はエクスポートしたいログの種類(例:Application, System, Security)、`<出力ファイル名.evtx>`はエクスポートしたログを保存するファイル名、`<クエリ>`は特定の条件を指定するためのXPathクエリです。
過去24時間のイベントログをエクスポート
例えば、特定の日付範囲内のアプリケーションログをエクスポートするには、以下のようなコマンドを使用します:
wevtutil epl Application C:\Logs\Application_logs.evtx /q:"*[System[TimeCreated[timediff(@SystemTime)<=86400000]]]"
このコマンドは、24時間前から現在までのアプリケーションログをC:\Logs\Application_logs.evtx
にエクスポートします。
システムログ、セキュリティログも同様に可能です。
wevtutil epl System C:\Logs\System_logs.evtx /q:"*[System[TimeCreated[timediff(@SystemTime)<=86400000]]]"
wevtutil epl Security C:\Logs\Security_logs.evtx /q:"*[System[TimeCreated[timediff(@SystemTime)<=86400000]]]"
特定の期間のシステムログをエクスポート
例えば、特定の日付範囲内のシステムログをエクスポートするには、以下のようなコマンドを使用します:
wevtutil epl System C:\Logs\system_logs.evtx /q:"*[System[TimeCreated[@SystemTime>='2024-05-12T15:00:00.000Z' and @SystemTime<='2024-05-13T15:00:00.999Z']]]"
このコマンドは、2024年5月13日00:00:00から14日00:00:00までのシステムログを`C:\Logs\system_logs.evtx`にエクスポートします。
日付と時刻はGMTで指定する必要があり、必要に応じてタイムゾーンを調整することが重要です。(日本時間では-09:00です)
汎用性をあげる(ほかのPCでも参照可能にする)
エクスポートしたままのevtxファイルでは他のPCにコピーして参照するときに内容が表示できないことがあります。
エクスポートしたevtxファイルにロケーション情報(日本語表示情報)を追加する必要があります。
wevtutil al C:\Logs\system_logs.evtx /locale:ja
クエリの作成のヒント
ここでクエリの書き方が難しいのでは?と思いますが、簡単にクエリを作成する方法があります。
一度イベントビューアを起動して、
任意のイベントを右クリック→「現在のログをフィルター」を選択します。
この画面で指定したいフィルターを設定します。

その後、XMLタブを開くと、クエリが参照できます。

<Select></Select>の中身(赤線の部分)がクエリ構文として使えます。
ただし、注意があります。
XML形式で記述されているので、エスケープ記述になっている箇所があります。
「>」は「>」、「<」は「<」を意味しています。
実際にwevtutilコマンドで使用する際は、
/q:”*[System[TimeCreated[@SystemTime>=’2024-05-12T15:00:00.000Z’ and @SystemTime<=’2024-05-13T15:00:00.999Z’]]]”
となります。
また、wevtutilはXPathクエリを使用して、より複雑なフィルタリングを行うこともできます。
例えば、特定のイベントIDを持つログのみを抽出する場合や、特定のログレベル(エラー、警告、情報など)にフィルタリングする場合などです。
イベントログをエクスポートする際の注意点は何ですか?
イベントログをエクスポートする際には、いくつかの重要な注意点があります。
これらのポイントを把握しておくことで、エクスポートプロセスをスムーズに行い、必要な情報を正確に取得することができます。
1. エクスポートするログの種類を正確に選択する:
システム、アプリケーション、セキュリティなど、Windowsにはさまざまな種類のイベントログがあります。
エクスポートする際には、目的に合った正しいログを選択することが重要です。
2. 適切なフォーマットでエクスポートする:
ログは通常、.evtx形式でエクスポートされますが、CSV形式でエクスポートすることも可能です。
使用するツールや分析の目的に応じて、最適なフォーマットを選択してください。
3. タイムゾーンの違いに注意する:
イベントログは協定世界時(UTC)でタイムスタンプされるため、異なるタイムゾーンで作業している場合は、重要なイベントを見逃さないように注意が必要です。
4. エクスポートするデータの範囲を指定する:
特定の期間やイベントIDに基づいてログをエクスポートする場合は、適切なクエリを使用して範囲を指定することができます。
5. セキュリティとプライバシーを考慮する:
エクスポートされたログには、機密性の高い情報が含まれることがあります。
そのため、エクスポートしたログファイルは安全な場所に保存し、アクセス制御を適切に管理する必要があります。
6. エクスポート後のログの整理と分析:
ログをエクスポートした後は、必要に応じて整理や分析を行い、問題のトラブルシューティングやシステムの監視に役立てます。
Excelなどのツールを使用して、ログデータを効果的に分析することができます。
7. エクスポートプロセスの自動化を検討する:
イベントログのエクスポートプロセスを自動化し、効率的にログを管理することが可能です。
イベントログのエクスポートは、システムの健全性を維持し、セキュリティを強化するための重要なステップです。
上記の注意点を踏まえ、wevtutilやPowerShellなどのツールを適切に使用することで、システム管理者は効率的にログデータを管理し、必要な情報を迅速に取得することができます。
このプロセスは、Windows環境でのイベントログ管理において、欠かせない存在と言えるでしょう。
wevtutilの使用方法に関する詳細な情報は、Microsoftの公式ドキュメントや、実際の使用例を提供する技術ブログで確認することができます。
これらのリソースは、wevtutilの機能を最大限に活用するための貴重なガイドとなります。
イベントログのエクスポートは、システムの健全性を維持し、セキュリティを強化するための重要なステップです。W
evtutilを適切に使用することで、システム管理者は効率的にログデータを管理し、必要な情報を迅速に取得することができます。
このツールは、Windows環境でのイベントログ管理において、欠かせない存在と言えるでしょう。
コメント