2010-08-12 78 views
13

我有以下log4net的配置:log4net的:多记录器

<log4net> 
    <appender name="A1" type="log4net.Appender.RollingFileAppender"> 
    <file type="log4net.Util.PatternString" value="C:\path1.log" /> 
    </appender> 

    <appender name="A2" type="log4net.Appender.RollingFileAppender"> 
    <file type="log4net.Util.PatternString" value="C:\path2.log" /> 
    </appender> 

    <logger name="A1Logger"> 
    <level value="ALL" /> 
    <appender-ref ref="A1" /> 
    </logger> 

    <logger name="A2Logger"> 
    <level value="ALL" /> 
    <appender-ref ref="A2" /> 
    </logger> 

</log4net> 

,然后在代码中,我做到以下几点:

var logger1 = LogManager.GetLogger("A1Logger"); 
var logger2 = LogManager.GetLogger("A2Logger"); 

但都登录到同一文件C:\path1.log

我在做什么错?

+1

我不确定问题可能是什么。有没有更多的配置,你没有向我们展示?就像是有一个“根”记录器设置?你确定你正在登录logger2(基本上没有错字)吗?它是否曾经登录到path2.log? – 2010-08-14 01:52:38

+0

您能否提供更多信息?在应用程序中是否有多个log4net配置文件,或者这是唯一的吗?你如何加载这个配置文件?通过代码或自动通过你的组装属性?此外,这是一个标准的应用程序或网络应用程序? – gregwhitaker 2010-08-15 16:19:06

+0

哦,它重新开始了。@ gwhitake,我正在使用一个配置文件,我的应用程序是一个桌面应用程序,我使用的唯一代码是在第一篇文章中。为了防万一,我还添加了一个元素,但是这个bug一直在咬我 – 2010-09-08 11:14:26

回答

1

看来,这是一个奇怪的调试错误。现在它不会重现。我很抱歉。