有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法重写logbackspring的属性。配置文件夹中的xml到其他模块的logbackspring。xml

这是我第一次在spring中使用logging,我得到了一个logback spring。maven项目根目录下配置文件夹中的xml。我的项目中还有3个模块,这三个模块都有相同的logback spring。在src/main/resource路径中的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

现在,当我运行project的服务器时,它并没有覆盖配置日志文件中的属性,而是覆盖服务器资源日志文件中的属性。 它在给我文件

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) 个答案

  1. # 1 楼答案

    你应该把第一个logback放在弹簧上。xml在projectStar/server/src/main/resource/config中,/config下的文件将覆盖/resource中的文件