无法将config文件夹中logback-spring.xml的属性覆盖到其他模块的logback-spring.xml

时间:2018-03-13 12:44:32

标签: java spring logging logback properties-file

这是我第一次使用spring登录,并在maven项目的根目录下的config文件夹中给出了一个logback-spring.xml。我的项目中还有3个模块,所有这三个模块在src / main / resource路径中都有相同的logback-spring.xml文件。

例如。 在projectStar / config / logback-spring.xml中,我有属性:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} %p %m%n</pattern>
        </encoder>
        <file>${LOG_FILE}</file>
        <rollingPolicy 
         class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.zip</fileNamePattern>
            <maxFileSize>2KB</maxFileSize>
            <maxHistory>2</maxHistory>
        </rollingPolicy>
</appender>


    <root level="DEBUG">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE"/>
    </root>

    <root level="INFO">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE"/>
    </root>

在projectStar / server / src / main / resource / logback-spring.xml中具有属性:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
         <encoder>
             <pattern>%d{yyyy-MM-dd HH:mm:ss} %p %m%n</pattern>
         </encoder>
         <file>${LOG_FILE}</file>
         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
             <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.txt</fileNamePattern>
             <maxFileSize>1KB</maxFileSize>
             <maxHistory>2</maxHistory>
         </rollingPolicy>
</appender>

    <root level="DEBUG">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE"/>
    </root>

    <root level="INFO">
        <appender-ref ref="FILE"/>
    </root>

还有yaml文件,其中包含以下属性:

logging:
  level:
    org.springframework.web: DEBUG

  file: log/a.log
  config: classpath:logback-spring.xml

现在,当我运行项目服务器时,它不会从服务器资源logback文件中覆盖config logback文件中的属性。 它给我文件

  

a.log.2018-04-06-21.0.txt

但我需要文件

  

a.log.2018-04-06-21.0.zip

文件。 我希望我的日志必须是zip格式和2 KB(在config / logback-spring.xml文件中提到)的大小,无论我在其他模块中给出什么。它始终首先从配置logback中获取,如果没有找到则会转到其他模块内部。

1 个答案:

答案 0 :(得分:0)

你应该将第一个logback-spring.xml放在projectStar / server / src / main / resource / config中,/ config下的文件将覆盖/ resource中的文件。