有没有办法从日志中过滤出INFO,只显示DEBUG&错误,使用web.config中的配置?
<root>
<level value="DEBUG" />
<appender-ref ref="ColoredConsoleAppender" />
<appender-ref ref="RollingFileSystemAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
答案 0 :(得分:8)
在log4X中,有些过滤器可以应用于appender以过滤消息;这是一个list of the filters
在您的情况下,您需要过滤三个appender以排除INFO
级别:LevelMatchFilter拒绝INFO
级别日志将起作用:
<filter type="log4net.Filter.LevelMatchFilter">
<acceptOnMatch value="false" />
<levelToMatch value="INFO" />
</filter>
答案 1 :(得分:3)
请注意,<filter>
代码(如上例所示)必须显示在<appender>
代码中!例如(这不是有效的log4net配置 - 我只显示<filter>
标记是<appender>
下的子条目:
<configuration>
<configSections>
<section ...="" />
</configSections>
<startup>
<supportedRuntime ...="" />
</startup>
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{dd MMM yyyy HH:mm:ss} {%thread} %level - %message%newline%exception"/>
</layout>
<filter type="log4net.Filter.LevelMatchFilter">
<acceptOnMatch value="true" />
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
</appender>
<root>
<appender-ref ...="" />
</root>
<logger name="Log4NetTest.OtherClass">
<level value="DEBUG"/>
<appender-ref ref="ConsoleAppender"/>
</logger>
</log4net>
</configuration>