2010-09-10 29 views
4

我有一個快速的log4net問題。我如何指定從app.Config使用哪個appender? 這個特定的配置文件引用了2個不同的appender。兩者都是滾動文件appender,但它們指向不同的文件。在整個應用程序中,log4net被調用並且一個類型被傳入構造函數。像這樣...我怎麼能告訴log4net appender使用從app.config

private static readonly ILog log = LogManager.GetLogger(typeof(Foo)); 

log4net如何知道哪個appender可供選擇?你能將類型映射到特定的指定appender嗎?我知道GetLogger有5個構造函數,你可以傳遞一個類型和一個appender的名字嗎?我看到「repositoryName」,不知道那是什麼。如果任何人都能指出我正確的方向,我將不勝感激。我想要一組特定的日誌專門記錄到一個appender。

感謝您的任何提示,
〜CK在聖地亞哥

回答

5

使用<logger>元素,使用Foo類的全名:

<logger name="full.parent.namespace.Foo"> 
    <level value="WARN" /> 
    <appender-ref ref="SomeAppender" /> 
</logger> 

指定所需的輸出的最低水平,並參考appender使用。

您還可以通過省略類名來爲特定名稱空間中的所有類使用單個<logger>

<logger name="full.parent.namespace"> 
    .... 
</logger> 
+0

完美!非常感謝你。 〜CK – Hcabnettek 2010-09-10 16:57:08

相關問題