2011-07-17 7 views
18

NLogでは、構成が異なる複数のロガーを作成できますか?異なる設定のNLogロガーを持つ

インスタンス化されるたびにすべてのイベントを新しいインスタンスに関連する別のファイルに記録する必要があるコンポーネントがあります。

これはNLogでも可能ですか?そうでなければ、それを行うロギングフレームワークがありますか?

答えて

21

はい、できます。特定のターゲットにログするように、そのタイプのロガーを構成することができます。あるいは、ロガー名を基に(自動的に)ファイルの名前を付けて、そのタイプのロガーをターゲット(ファイルなど)にロギングするように構成することもできます。

いくつかの例については、NLog config file documentation hereを参照してください。

また、一部の設定ファイルのヒントについてはpost hereを参照してください。

ここでは、特定のタイプの出力ファイルに記録するタイプと、その日付に基づいてファイルに記録する他のすべてのロガータイプの2つのロガーを設定する方法の簡単な例を示します。

<nlog> 
    <targets> 
    <target name="f1" xsi:type="File" fileName="${logger}.txt" /> 
    <target name="f2" xsi:type="File" fileName="${shortdate}.txt" /> 
    </targets> 
    <rules> 
    <logger name="Name.Space.Class1" minlevel="Trace" writeTo="f1" /> 
    <logger name="*" levels="Debug" writeTo="f2" /> 
    </rules> 
</nlog> 

あなたがタイプName.Space.Class1のログは、「特別な」ファイル(名前はロガーによって決定される、すなわち1)に行きたい場合は、あなたがロガーに「最終」を追加することができますこのようなspecfication:

<logger name="Name.Space.Class1" minlevel="Trace"final="true" /> 
+2

新しいコンフィギュレーションファイルのリンク https://github.com/nlog/NLog/wiki/Configuration-file –

関連する問題