• Excel
    【Excel】データ入力時間を圧倒的短縮!「フラッシュフィル」機能を活用しよう
    2017年10月5日
  • Mac
    MacにてShiftを押しながらアルファベット入力出来る様に設定変更してみた。
    2013年12月23日
  • 食べ物
    鹿児島にて黒豚を堪能するなら中央駅西口「寿庵」のハーブ塩しゃぶしゃぶがいい感じ
    2015年11月15日
  • Windows
    DVD/BDの自動再生方法を変更/無効化する方法。(Windows7版)
    2014年1月6日
  • フリーソフト
    Win/Mac両方の全アプリで使える「現在の日付/時刻を一発入力」する方法
    2016年5月6日
  • 食べ物
    オクラの豆から作られた謎の指宿名産「おくらコーヒー」を飲んでみた
    2015年11月24日
  • Excel
    【Excel】複数開いたファイルを瞬時に切り替えるショートカット
    2012年5月25日
  • Windows
    Shiftキーを連打したときに変なウィンドウが表示されないようにする方法
    2016年1月10日
  • 鹿児島
    屋久島・ヤクスギランドは登山初心者・経験者もみんな楽しめる素晴らしいハイキングルートでした
    2015年12月2日
  • Windows
    Windows7のAero Snapをデュアルディスプレイでも使う方法
    2012年7月5日
  • Kindle
    ショック…Mac版のKindleは日本語対応しているのに日本のアカウントには未対応らしい…
    2013年1月3日
  • Excel
    【Excel】グラフに移動平均線を追加する方法
    2018年2月10日
  • Excel
    【Excel】シート間を一瞬で移動するショートカットキー
    2012年7月19日
  • その他
    エヴァンゲリオンとほぼ同サイズ! 茨城の田舎にそびえる超巨大仏像『牛久大仏』を見に行ってきた
    2013年8月27日
  • Ruby
    MacにデフォルトでインストールされているRubyのバージョンを確認する方法 (Yosemite版)
    2016年5月12日
  • タイ
    【タイ】Scootの飛行機機内WiFiを使ってみた。 料金プランや速度感などまとめ
    2017年11月30日
  • Windows
    起動しなくなったWindowsからデータを復元したいときに行うべき4つの方法
    2015年7月10日
  • Excel
    Excel/Word 2007/2010で上部のメニュー(リボン)を非表示にするショートカットキー
    2012年6月2日
  • Windows
    Windows上で次回起動時にセーフモードにする設定方法
    2015年8月20日
  • Excel
    【Excel】土・日曜日の日付セルを自動的に色塗りする方法(動画あり)
    2014年10月11日
  • Mac
    自分のMacのOSのバージョンがわからないので調べてみた
    2013年4月20日
  • 北海道
    札幌駅近で居心地の良いドミトリー! 「Wagayado」がとても良かった
    2016年7月11日
  • Webサイト
    トリップアドバイザーに口コミ投稿すると貰えるポイントとは何なのか? 金銭的価値はあるのかどうか調べてみた
    2017年3月18日
  • 鹿児島
    「薩摩富士」と名高い日本百名山の「開聞岳」に登ってきた この素晴らしい眺望を御覧ください
    2015年11月23日
  • アイテム
    読んでると本当に行けそうな気がしてくる…! 『5日間の休みで行けちゃう! 絶景・秘境への旅』
    2013年5月29日
  • 鹿児島
    屋久島・白谷雲水峡の白谷小屋に泊まってきた 山小屋に一人だけの宿泊は思いの外怖い件
    2015年12月3日
  • インドネシア
    同じインドネシアでも「ジャワ島とバリ島」はほぼ別の国だと思ったほうがいいと感じた話(動画あり)
    2016年3月20日
  • Windows
    コマンドプロンプトで名前にスペースが入ってるフォルダを指定する方法
    2013年4月5日
  • Excel
    【Excel】オブジェクト間を直線コネクタでつないだときに起きる微妙なズレを調整する方法
    2012年7月12日
  • Excel
    【Excel】空白セル列を一発削除する方法
    2015年11月6日

bat001

バッチ勉強継続中です。 サーバの管理者だったらよく見るであろうWindowsのイベントビューア、イベントログについてコマンドプロンプトおよびバッチからログを出力する方法について調べてみました。

スポンサードリンク

関連記事

ソース

@echo off

wevtutil qe system /f:text /q:*[System[(EventID=%1)]]

処理の内容

ソースは一行だけなのでバッチと呼んでいいかどうかも怪しい作りですが、中でやっている処理については下記の通り。

「システム」のイベントログから、指定したイベントIDを出力する

wevtutil qe system /f:text /q:*[System[(EventID=%1)]]

Windows Vistaや7以降、Windows Server 2008以降でコマンドプロンプトからイベントログにアクセスするには wevtutil.exe を使います。

このコマンドから、イベントログにできる操作がすべて可能なのだとか。 コマンドのリファレンスについては、下記が詳しいのでこちらを参照。


Windows 7, Vista, Server 2008, R2 の新しいイベントログにスクリプトからアクセスする方法 - Shigeya Tanabe's blog - Site Home - TechNet Blogs

 

今回の記述の中の %1 はバッチの引数で、この引数に数値を指定してバッチを実行すればそのイベントIDのログを取得するという仕組みです。

イベントログを出力するコマンドのオプションについて

wevtutil qe system /f:text /q:*[フィルター設定]

wevutil qe で、イベントログを照会、出力するコマンドになります。

system はイベントログの種類(アプリケーションとか、システムとか)の指定ですね。 アプリケーションの場合は wevtutil qe application でいけます。

/q]*[] のオプションは、イベントログのフィルター設定の内容を指定するオプションです。

ここのフィルター指定の部分は入力項目が多岐にわたりすぎるのでここでは説明は控えときますが、一例を挙げると /q:*[System[(EventID=1)]] という指定にするとイベントIDが1のログのみを表示(フィルター)するということになります。

/f:text の部分は、出力するフォーマットについて。 このオプションの場合、出力結果をわかりやすいようにテキストの形式で出力します。 未設定だと、XMLファイルのまま出力されるので解読が大変。 逆にいえばXML形式で取り込んで他のアプリケーションなどで活用するのであれば、XMLのままの方がいいのでしょう。

出力される内容

とりあえず、今回の例ではサーバが起動された際に出力される「EventLog」のイベントID6009のログを引数から指定して出力してみました。 存在するログの分だけ一気に出力されるので、これはほんの一部です。

c:\>EventLogGet.bat 6009

Event[0]:
  Log Name: System
  Source: EventLog
  Date: 2014-10-29T09:31:51.000
  Event ID: 6009
  Task: N/A
  Level: 情報
  Opcode: N/A
  Keyword: クラシック
  User: N/A
  User Name: N/A
  Computer: PCNAME
  Description:
Microsoft (R) Windows (R) 6.01. 7601 Service Pack 1 Multiprocessor Free.

...

このような形でテキスト形式で一覧表示されるようになります。 引数部分は当然、別の値からの変数でも問題なしです。

まとめ

  • コマンドプロンプトから wevtutil.exe を使う
  • イベントログの出力をバッチから行うことも可能
  • イベントID部分は変数や引数で指定できる
  • 出力形式はXMLやテキストの形式で可能

アイデア次第ではもうちょっと有効活用できそうな気がするので、もうちょっと調べてみます。 もうちょっと手を加えればイベントログからcsv形式にも出力可能なようなので、この辺も紹介できればいいですね。