2

我想要所有东西的信息和一个包的调试。我尝试了许多变体:

<log4net>
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
        <param name="File" value="C:/temp/AutoTag.log"/>
        <param name="AppendToFile" value="true"/>
        <param name="MaxSizeRollBackups" value="2"/>
        <param name="MaximumFileSize" value="100KB"/>
        <param name="RollingStyle" value="Size"/>
        <param name="StaticLogFileName" value="true"/>
        <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] ac.server %-5p %c - %m%n"/>
        </layout>
    </appender>
    <root>
        <level value="INFO"/>
        <appender-ref ref="RollingFileAppender"/>
    </root>
    <logger name="AutoTagCore.net.windward.autotag.utils">
        <level value="DEBUG"/>
    </logger>
</log4net>

但没有任何效果。如果我移除<root/>零件,我会在一个包装中获得详细信息。否则,就好像该<logger/>部分不存在一样。

我怎样才能做到这一点?(更新以显示完整的 log4net 部分)。

更新 2:我是个白痴 - 我在那里输入了错误的包名。

4

1 回答 1

4

Logger 将从 root 继承所有 appender。您只需要指定级别:

<root>
    <level value="INFO"/>
    <appender-ref ref="RollingFileAppender"/>
</root>
<logger name="AutoTagCore.net.windward.autotag.utils">
    <level value="DEBUG"/>
</logger>

顺便说一句,验证 appender 设置 - 它可以限制为 INFO 级别:

<threshold value="INFO"/>

最后一个可能的问题 - 你可以有不同的类型命名空间和记录器名称(可能是一些错字)。

于 2012-12-20T21:24:31.313 回答