2

すべてにINFOが必要で、1つのパッケージにDEBUGが必要です。私は次の多くのバリエーションを試しました:

<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/>と、1つのパッケージで詳細がわかります。それ以外の場合は、<logger/>パーツが存在しないかのようになります。

どうすればこれを達成できますか?(完全なlog4net部分を表示するように更新されました)。

Update2:私はばかです-そこに間違ったパッケージ名がありました。

4

1 に答える 1

4

ロガーはルートからすべてのアペンダーを継承します。レベルのみを指定する必要があります。

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

ところで、アペンダー設定を確認します-INFOレベルに制限される可能性があります:

<threshold value="INFO"/>

そして最後に考えられる問題-異なるタイプの名前空間とロガー名(おそらくいくつかのタイプミス)を持つことができます。

于 2012-12-20T21:24:31.313 に答える