もくじ
https://tera1707.com/entry/2022/02/06/144447
やりたいこと
作成したwindowsアプリのユーザーテスト中に、クラッシュしたとか謎の動きをしたとかがよくある。
そのとき、まずはイベントログを見ようという話になるので、イベントログをさっと採取できるようにバッチを用意しておきたい。
やったこと
wevtutil
を使う。
具体的には、下記のコマンド。
wevtutil export-log System AppEvtLog.evtx
export-log
が、イベントログをエクスポートせよ、という意味のパラメータ。
System
が、イベントログの種類の指定。今回試した限り、下記があった。
種類 | パラメータ |
---|---|
Applicationログ | Application |
システムログ | System |
AppEvtLog.evtx
がファイル名。拡張子を.evtx
にしておけば、何でもよい。
実際使うとき
きっと、私が仕事で実際に使うときは、システムログとアプリケーションログくらいしか見ないので、 下記のような感じで使えばよいと思う。
wevtutil export-log application AppEvtLog.evtx wevtutil export-log System SystemEvtLog.evtx
さらに工夫するには
「参考」にも挙げている下記の記事に、クエリを使って「過去〇日間のイベントログ」といった採取の仕方も書かれている。
非常に参考になる。ありがとうございます。
https://qiita.com/koiwaiwaiko/items/9978a2d0565c265f5ad6
参考
wevtutil(msdocs)
https://learn.microsoft.com/ja-jp/windows-server/administration/windows-commands/wevtutil
バッチファイルでWindowsのイベントログをエクスポートする
もっとこまかく、いろいろ試されている方の記事。とても参考になる。
https://qiita.com/koiwaiwaiko/items/9978a2d0565c265f5ad6
XPathクエリ
https://learn.microsoft.com/ja-jp/windows/win32/wes/consuming-events
XPathのほんとの仕様?はこっちっぽい(見る気しない)