2011-06-21 6 views
2

私はlog4netを本当に好きですし、私のgo-to loggingフレームワークです。私がこのフレームワークで持つ唯一の問題は、それがXMLファイルで最も構成されていることです。これは、アプリケーションの開始前にすべてのログ記録要件を知る必要があることを意味します。簡単なプログラム設定をサポートする.Net用のロギングフレームワークはありますか?

私たちのアプリケーションは、外部ホストに多くの接続を作成します。別々のファイルにログを記録するロガーを作成したいと考えています。ですから、3つの接続A、B、Cがあれば、logA.txt、logB.txt、logC.txtを見たいと思います。問題は、私たちが作る接続の数が完全に動的で、実行時にしか知りません。ファイルに対して選択した名前は、データベース内で設定され、その冗長性も示されます。

私はプロジェクトの他のすべての領域でlog4netに満足しています。個別の接続ごとにロガーを動的に作成できるだけです。私は前に似たようなことを尋ねましたが、log4netを行う方法は同じです。解決策はちょっと混乱していて、プロジェクト用に設定されている残りのログがどのように再生されるかはわかりません。

プログラムで簡単に構成できる別のログフレームワークがありますか。 私は次のようなものを考えていました(たとえば)。

ILog log = new Log(); 
log.FileName = "foobar.txt" 
log.Level = LogLevel.Debug; 

答えて

3

TraceSourceでビルドを検討しましたか?

TraceSource source1 = new TraceSource("TraceSourceName"); 
source1.Listeners.Clear(); 
source1.Listeners.Add(new TextWriterTraceListener(fileName)); 
source1.Switch.Level = SourceLevels.Warning; 

(またはapp.configでtrueにTrace.AutoFlushを設定することを忘れないでください。)

あなたは、これが役に立つことを願っ。
-Zs

関連する問題