2009-03-04 9 views
2

イベントログをプログラムでどのように開いていますか?私はいつものを使用してイベントログにエラーを記録しています

System.Diagnostics.Trace.TraceError("<" + purpose + "><time>" + DateTime.Now.ToUniversalTime() + "</time><message>" + message + "</message></" + purpose + ">"); 

と(私自身の形式または開口部のいずれかによって、このログファイルを呼び出し、ユーザーのためにそれを表示する方法がある場合は疑問に思ってイベントログファイルは「イベントビューア」と同じように)。

%SystemRoot%\ System32 \ Winevt \ Logs \ mylog.evtxにファイルがありますが、この方法に近づくべきかどうかはわかりません。理想的には、イベントビューアの機能をエミュレートしたいのですが、アプリケーション用にカスタマイズしています。

+0

ちょっと質問がありますが、Trace.TraceErrorはEventLogに書き込みません(それだけです)。 –

+0

@Henk、いいえ、私はそう信じません。 alphabeatはおそらくEventLogTraceListenerをTrace.TraceListenersに追加しています。 –

+0

私は本当にありました。当時私は気づいていませんでしたが、すでに別の開発者によって設定されていました。 –

答えて

4

私はイベントログにどのようにアクセス可能なデータをビスタ/ Winのサーバーにされて見て試していない

var log = EventLog.GetEventLogs().Where(x => x == "Application").First(); 
foreach (var entry in log.Entries) { 
    // Do something with the entry 
} 
+0

もちろん、ありがとう!どのように私はこれを見ていませんでした:/ –

+0

ありがとうございます。私はラムダを愛しています。 –

+0

@alphabeat、lambdas rock :) – JaredPar

1

を次のようにたとえば、あなたがアプリケーション内のエントリを見るログインすることができSystem.Diagnostics.EventLog

試してみてください2k8(* .evtx)ですが、MMCコンソールは拡張性があり、今すぐ独自のMMCプラグインを作成できます。したがって、あなたがEventVwr.mscの独自のバージョンを作成することになった場合、それは今やパイと同じように簡単です。

http://msdn.microsoft.com/en-us/library/ms692759(VS.85).aspx

それはあなたが現在の機能から抜けて、カスタマイズしたログビューアthatsの中でやりたいと思っていることは何ですか?

関連する問題