logback不创建文件

时间:2013-01-13 04:51:18

标签: slf4j logback

不确定我在这里做错了什么,但我的日志记录似乎已关闭。我正在使用

slf1.7.2 logback 1.0.9

这是我的配置文件:

<configuration debug="true">
    <contextName>myProduct</contextName>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>%msg%n</pattern>
        </encoder>
    </appender>
    <appender name="ROLLINGFILE"
        class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>../logs/myproduct.log</file>
        <append>true</append>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>../logs/myproduct-%d{yyyy-DD}.%i.zip
            </fileNamePattern>
            <maxHistory>10</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy
                class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>

            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
        <encoder>
            <pattern>%date{HH:mm:ss.SSS} %-5level %logger{40} [%file:%line] -
                %msg%n</pattern>
        </encoder>
    </appender>
    <root>
        <appender-ref ref="ROLLINGFILE" />
    </root>
    <logger name="org.hibernate" level="error">
        <appender-ref ref="ROLLINGFILE" />
    </logger>
    <logger name="org.springframework" level="error">
        <appender-ref ref="ROLLINGFILE" />
    </logger>
    <logger name="com.edelweissco" level="error">
        <appender-ref ref="ROLLINGFILE" />
        <appender-ref ref="STDOUT" />
    </logger>
</configuration>

但是当我部署我的应用程序时,日志记录在控制台中,即使我将spring和hibernate设置为ERROR,控制台也会填充其日志记录语句。我的日志文件没有在任何位置的文件系统上创建,但我没有收到错误。

这是我启动时的控制台输出:

21:28:34,276 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
21:28:34,276 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback-test.xml] at [file:/Library/Tomcat/apache-tomcat-7.0.27/webapps/myapplication/WEB-INF/classes/logback-test.xml]
21:28:34,340 |-INFO in ch.qos.logback.classic.joran.action.ContextNameAction - Setting logger context name as [myProduct]
21:28:34,341 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
21:28:34,346 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
21:28:34,406 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
21:28:34,412 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ROLLINGFILE]
21:28:34,450 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - Will use zip compression
21:28:34,454 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy - Will use the pattern ../logs/myproduct-%d{yyyy-DD}.%i for the active file
21:28:34,460 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@38a3c5b6 - The date pattern is 'yyyy-DD' from file name pattern '../logs/myproduct-%d{yyyy-DD}.%i.zip'.
21:28:34,460 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@38a3c5b6 - Roll-over at midnight.
21:28:34,460 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@38a3c5b6 - Setting initial period to Thu Jan 10 20:42:21 MST 2013
21:28:34,464 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
21:28:34,469 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLINGFILE] - Active log file name: ../logs/myproduct.log
21:28:34,469 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ROLLINGFILE] - File property is set to [../logs/myproduct.log]
21:28:34,471 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLINGFILE] to Logger[ROOT]
21:28:34,473 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate] to ERROR
21:28:34,474 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLINGFILE] to Logger[org.hibernate]
21:28:34,474 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.springframework] to ERROR
21:28:34,474 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLINGFILE] to Logger[org.springframework]
21:28:34,474 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [com.edelweissco] to ERROR
21:28:34,474 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ROLLINGFILE] to Logger[com.edelweissco]
21:28:34,474 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[com.edelweissco]
21:28:34,475 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
21:28:34,477 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6f92c766 - Registering current configuration as safe fallback point
Jan 12, 2013 9:28:34 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext

输出中没有错误,但是日志记录似乎不正确使用配置文件。

1 个答案:

答案 0 :(得分:1)

如果您正在使用jboss5.1并遇到同样的问题,请在jboss-web.xml中添加以下内容。

<class-loading>
    <loader-repository>
        com.hp:classloader=logback-slf4j
        <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
    </loader-repository>
</class-loading>

这可以解决您的问题。