无法在Logback中将追加器设置为记录器

时间:2015-04-09 12:43:38

标签: java logback

我有一个appender FILE,并希望将org.springframwork和ch.qos.logback指向此日志文件。但是,当我在linux服务器上运行我的应用程序时,这两个软件包的INFO消息不会进入日志文件,而是直接打印出来。 这是我的logback.xml:

<configuration debug="true">
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"/>
<jmxConfigurator/>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>log/myfile.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>log/myfile.%i.log.gz</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>10</maxIndex>
    </rollingPolicy>
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>500MB</maxFileSize>
    </triggeringPolicy>
    <encoder>
        <pattern>%d{ISO8601} %-5p [%t] [%c{1}] - %m%n</pattern>
    </encoder>
</appender>
<root level="${log.level:-INFO}">
    <appender-ref ref="FILE"/>
</root>
<logger name="org.springframework" level="INFO">
    <appender-ref ref="FILE"/>
</logger>
<logger name="ch.qos.logback" level="INFO">
    <appender-ref ref="FILE"/>
</logger>

08:23:22,446 | -INFO in ch.qos.logback.classic.joran.JoranConfigurator@1b83cfe9 - 将当前配置注册为安全回退点

2015年4月9日上午8:23:22 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions 信息:从类路径资源[spring / spring-common.xml]

中加载XML bean定义

有人可以帮助指出我的配置有什么问题吗?谢谢。

BTW:我从logback文档中读到,我不需要为logger设置相同的appender-ref,否则它将被打印到同一个appender中两次。但是我从logback调试信息中看到,只有当我为记录器设置appender-ref时,它才会为记录器设置appender。

1 个答案:

答案 0 :(得分:0)

ch.qos.logback的第一个日志输出无法使用日志配置重定向,因为此输出在Logback读取其配置时发生 - &gt;母鸡/蛋的问题。

要删除这些消息,请在XML中使用debug="false"

org.springframework除非您为org.apache.commons.logging(这是Spring使用的日志框架)安装了一个网桥,否则不会使用Logback。在http://www.slf4j.org/legacy.html

的文档中查找jcl-over-slf4j.jar