在tomcat上部署时,logback-spring.xml不起作用

时间:2017-05-11 07:05:29

标签: java spring tomcat logging

我用Java 8创建了spring boot项目,我正在使用外部Tomcat容器进行部署。我有一个logbakc-spring.xml如下:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>INFO</level>
    </filter>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <fileNamePattern>${LOG_PATH}/log/hfxn.%d{yyyy-MM-dd}.log</fileNamePattern>
    <maxHistory>90</maxHistory>
    </rollingPolicy>
    <encoder>
        <charset>utf-8</charset>
        <Pattern>%d %-5level [%thread] %logger{0}: %msg%n</Pattern>
    </encoder>
</appender>

但是,当我构建战争并在Tomcat上部署时,我无法在我指定的路径中找到日志文件,而且,我不知道为什么?

2 个答案:

答案 0 :(得分:0)

您是否在控制台消息中看到了logback文件?尝试命名文件logback.xml,它是在启动时搜索的标准logback名称。另外,确保文件位于jar中的顶层,而不是嵌套在子目录中。

答案 1 :(得分:0)

如果您的项目与Spring-boot兼容,则名为logback-spring.xml的注销文件可以很好地工作,但是当您将项目作为war部署到tomcat中时,由于命名了对注销文件的约束,因此未选择该文件。 >

登录文件只能包含以下三个允许的名称之一:

  • logback-test.xml
  • logback.groovy
  • logback.xml

将文件名更改为上述之一后,logback配置将开始使用通过Tomcat部署的war软件包。