2009-08-12 189 views
0

几个星期前,我发现了log4net我的初始结果让我感到无比快乐。到目前为止,我一直在使用出厂设置(BasicConfigurator.Configure()),但现在我觉得更进一步,尝试一些自定义配置。log4net:在同一appender配置下使用多个日志级别

我已经摔跤了我的方式,使应用程序读取配置文件和whatnot实际上我有体面的结果,但我想知道如何启用剩余的日志记录级别? (即DEBUG,WARN,ERROR)我已经尝试在<root>元素内添加它们,但它不起作用。

目前我使用下面的配置文件:

<appender name="Console" type="log4net.Appender.ColoredConsoleAppender"> 

    <mapping> 
    <level value="DEBUG" /> 
    <foreColor value="White" /> 
    <backColor value="Blue" /> 
    </mapping> 

    <mapping> 
    <level value="INFO" /> 
    <foreColor value="White" /> 
    <backColor value="Green" /> 
    </mapping> 

    <mapping> 
    <level value="WARN" /> 
    <foreColor value="White" /> 
    <backColor value="Yellow" /> 
    </mapping> 

    <mapping> 
    <level value="ERROR" /> 
    <foreColor value="White" /> 
    <backColor value="Red" /> 
    </mapping> 

    <layout type="log4net.Layout.PatternLayout"> 
    <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> 
    </layout> 

</appender> 

<root> 
    <appender-ref ref="Console" /> 
</root> 

如果任何你们的好心会继续前进,点什么,我缺少的,我会今天一个非常开心的程序员。非常感谢您的反馈!

UPDATE:指定日志级别(<level value="INFO" />)解决的log4net的将默认启用所有这些问题。

回答

1

在记录器(根或其他)上指定级别将启用该级别和下级的所有消息。指定INFO将启用INFO,WARN,ERROR和FATAL。 DEBUG消息将被排除,因为这是比INFO更高的级别。