私は(学習目的で)独自のイベントロガーを構築しようとしています。.net をよりよく理解するためにこれを行っているため、独自のフレームワークを構築する代わりに、.net 以外のフレームワークを使用することについて聞くことに興味はありません。
アイデアは、プログラム内でログ ファイルに書き込んだり、プルしたりできるイベント システムを用意することです。これを行うために、LogEvent
の中に格納されるクラスを作成していQueue<LogEvent>
ます。
LogEvent
クラスで次のフィールドを使用する予定です。
private EventLogEntryType _eventType //enum: error, info, warning...
private string _eventMessage
private Exception _exception
private DateTime _eventTime
イベントが呼び出される原因となったオブジェクトをキャプチャする最良の方法はよくわかりません。ただやろprivate Object _eventObject;
うと思ったのですが、それはスレッドセーフでもセキュアでもないと考えています。
イベントを呼び出したオブジェクトを最適に保存する方法についてのアドバイスをいただければ幸いです。また、その他のご提案もお待ちしております。
ありがとう、トニー