0
我正在嘗試記錄錯誤消息以及將消息調試到兩個不同的文件。我正在使用兩個不同的文件appender來做到這一點。使用log4net記錄到兩個不同的日誌文件
這裏是我的app.config文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="DebugFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="DebugLog.log" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date %level %logger - %message %newline" />
</layout>
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG"/>
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
</appender>
<appender name="ErrorFileAppender" type="log4net.Appender.FileAppender">
<param name="File" value="ErrorLog.log" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date %level %logger %type %exception %line %location - %message %newline" />
</layout>
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR"/>
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="DebugFileAppender" />
</root>
<logger name="ErrorFileAppender" >
<level value="ERROR"/>
<appender-ref ref="ErrorFileAppender"/>
</logger>
調試消息正常工作,但是當我改變程序包含一個異常錯誤,該錯誤不被寫入到文件中。
這裏是我用來捕獲異常的代碼:
catch (Exception e)
{
logger.Error(e);
}
我想通解決我一直存在的問題。修改根目錄以包含以下內容。 <附加器-REF REF = 「ErrorFileAppender」/> <附加器-REF REF = 「DebugFileAppender」/> 我希望這可以幫助其他人誰也有同樣的問題:) –
我建議你編寫答案並接受它。這種方式更具可讀性...... –