2015-09-25 75 views
0

我正在使用log4net來記錄來自我的c#應用程序的消息。我想知道,如果記錄一個跟蹤輸入的時候,我可以使用下面的代碼:可以在log.Trace之前使用log.IsDebugEnabled嗎?

if (log.IsDebugEnabled) 
    log.Trace("MY trace entry"); 

我的假設是,如果日誌記錄級別設置爲跟蹤則調試將永遠啓用工作。由於調試和跟蹤僅用於故障排除,因此任何調試代碼都可以輸入此塊。

+0

是否有你需要的if語句特別的原因?我問,因爲日誌級別設置已經可以控制實際允許通過的日誌調用。 – Phaeze

回答

2

可能可以使用像一個LevelRangeFilter在調試級別禁用日誌記錄,但離開它能夠在TRACELEVEL,這可能會導致你的方法

那麼問題爲什麼不檢查實際水平?

if (log.Logger.IsEnabledFor(log4net.Core.Level.Trace)) 
    log.Trace("MY trace entry"); 
+0

我不知道這是可能的,我發現使用log.IsDebugEnabled的所有例子。謝謝! –

相關問題