トップ 履歴 一覧 カテゴリ ソース 検索 ヘルプ RSS ログイン

DotNet/EventLog

INDEX

イベントログ

.NETは標準でイベントログに書き込むことが出来る。また、任意のカスタムイベントログにも書き込むことが出来る。ただし、最初にはイベントソースの登録とカスタムイベントログの作成が必要となる。

 イベントログに書き込む

イベントログに書き込むには、EventLog クラス(名前空間:System.Diagnostics)の WriteEntry メソッドを利用する。

EventLog.WriteEntry(source, message, type);

source は登録したイベントソース。message はイベントログに残す内容。type は「情報」などイベントの種類を指定する。詳しくは、MSDN 参照。

 イベントソースの登録

イベントログに書き込むには、事前にイベントソースの登録が必要となる。ソースは、同時に一つのログにしか登録出来ないので、変更する場合は先に削除する必要がある。これらの操作にはコンピュータの管理者権限が必要です。

EventLog.CreateEventSource(source, logName);

source は登録するイベントソース。logName はログ名(アプリケーション、システム、または カスタムイベントログ)を指定する。

EventLog.DeleteEventSource(source);

source は削除するイベントソース。

EventLog.Delete(logName);

logName は削除するログ名。カスタムイベントログを消すとそれに登録されるイベントソースも削除され、他のアプリケーションが動かない可能性があるので注意が必要。

追記 (2015-02-21) :一度登録したイベントソースを別のカスタムイベントログに変更する場合、削除もしくは再登録し直したあとでOSを再起動させる必要がある。多分、イベントログを記録するサービスがソースと書き込むログファイルをロードしている(メモリ上にない場合にレジストリから取得する)ためと思われる。Win 7/8.1 で確認。

私製イベントログツール

.NET アプリケーションでイベントログに書き込むには、イベントソースの登録などを事前に行うか、アプリケーション内で行う必要がある。

※C# で作って、他の C# アプリケーションで書き込みはうまくいったが、違うプログラムで書き込もうと思ったら失敗した記憶がある。なぜ?

 ファイル

■ダウンロード: EventLogTool.zip(795) ※.Net 2.0 でビルド

使用条件・配布条件

  • 営利・非営利問わず各自の責任で自由に利用してください。
  • アーカイブの内容を変更しなければ自由に配布を行ってかまいません。

免責事項

本ソフトウェアを使用した結果生じたいあらゆる事象(損害,損失など)において作者は一切責任を負わないものとします。なお本ソフトウェアにバグが発見された場合、作者は修正及びバージョンアップの義務を負わないものとします。

 使い方

> EventLogTool
USAGE: EventLogTool (add|del|chk) source [logName]
USAGE: EventLogTool dellog logName
USAGE: EventLogTool log [/S:source] [/E:I|W|E|SA|FA] message

イベントソースを登録する

EventLogTool add source [logName]

source は登録するソース名、logName はカスタムイベントログ名。logName は指定しなければ「アプリケーション」に登録される。カスタムイベントログがない場合は、新たに作成される。

イベントソースを削除する

EventLogTool del source

source は削除するソース名。

イベントソースをの有無を確認する

EventLogTool chk source

source は確認するソース名。

カスタムイベントログを削除する

EventLogTool dellog logName

logName は削除する(カスタムイベント)ログ名。

イベントログに書き込む

EventLogTool log [/S:source] [/E:I|W|E|SA|FA] message

message は書き込む内容、'/S:'でソース名、'/E:'で種類を指定する。ソース名を省略すると 'EventLogTool' となる。種類を省略すると「情報」となる。

種類の内容はそれぞれ以下がある。(それぞれ頭文字を指定)
種類 意味
Information 情報イベント
Warning 警告イベント
Error エラーイベント
SuccessAudit 成功した監査イベント
FailureAudit 監査エラーイベント

最終更新時間:2015年02月21日 15時09分10秒 指摘や意見などあればSandBoxのBBSへ。

EventLogTool.zip