4

logback-test.xml ですべての外部ライブラリからのログ出力を無効にしようとしています。どういうわけか、宣伝どおりに機能せず、その理由がわかりません。

これは私の logback-test.xml の内容です:

<configuration>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            </Pattern>
        </layout>
    </appender>

    <!-- Turn off third party chatter -->
    <logger name="httpclient.wire" level="OFF" />
    <logger name="o.s" level="OFF"/>
    <logger name="org.spring" level="OFF"/>
    <logger name="org.apache" level="OFF"/>

    <root level="DEBUG">
        <appender-ref ref="STDOUT"/>
    </root>
</configuration>

明示的に org.spring ロガーをオフにしましたが、Spring からのすべてのデバッグ出力が引き続き表示されます。ただし、要素に別のレベルを指定すると機能します。なぜそれが起こるのですか?

4

1 に答える 1

11

答えは、ロガー名を知っていることです! すべての Spring ロガーは、org.spring ではなく、org.springframework で始まります。名前を修正した後、クラスパスに commons-logging が存在する場合でも、すべてが機能します。

于 2010-04-07T18:57:31.827 に答える