在log4net的日期和级别上都为了获得滚动风格而感到头疼。
我想要实现的目标是:
1月1日:
2014-01-01_DEBUG.txt
2014-01-01_INFO.txt
2014-01-01_ERROR.txt
1月2日:
2014-01-02_DEBUG.txt
2014-01-02_INFO.txt
2014-01-02_ERROR.txt
答案 0 :(得分:1)
实现这一目标的最简单方法是为每个级别创建一个RollingFileAppender并过滤每个appender以仅选择一个级别:
<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="DEBUG" />
<levelMax value="DEBUG" />
</filter>
<!-- ... -->
<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="INFO" />
</filter>
<!-- ... -->
然后只需将它们全部插入您需要的记录器
<root>
<level value="DEBUG" />
<appender-ref ref="DebugAppender" />
<appender-ref ref="InfoAppender" />
<appender-ref ref="ErrorAppender" />
</root>