logback 忽略 springProfile 标签

问题描述 投票:0回答:1

当配置文件不是“本地”时,我想登录以打印文件中的日志消息,如果配置文件是本地的,那么我希望它打印到控制台和文件。

我的logback.xml如下。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

  <!--  logger name="org.springframework.jdbc.core" level="debug" -->

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}.%M %line - %msg%n</Pattern>
    </encoder>
  </appender>

  <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_FILE}</file>

        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i</fileNamePattern>

            <!-- each file should be at most 10MB, keep 60 days worth of history, but at most 20GB -->
           <maxFileSize>10MB</maxFileSize>    
           <maxHistory>10</maxHistory>
           <totalSizeCap>2GB</totalSizeCap>
        </rollingPolicy>

        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS}  %-4relative [%thread] %-5level %logger{35}.%M %line - %msg%n</pattern>
        </encoder>
    </appender>

   <logger name="com.mycom.name" level="info" additivity="false">
    <appender-ref ref="FILE"/>
    <springProfile name="local">
        <appender-ref ref="STDOUT"/>
    </springProfile>

   </logger>

   <logger name="com.mycom.name" level="debug" additivity="false">
                <appender-ref ref="STDOUT"/>
    </logger>

<!--
  <root level="info">
    <springProfile name="local">
        <appender-ref ref="STDOUT"/>
    </springProfile>
        <appender-ref ref="FILE"/>  
  </root>

    <springProfile name="local">
      <root level="debug">
            <appender-ref ref="STDOUT"/>
      </root>
    </springProfile>      

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

</configuration>

我看到它忽略了 springProfile 标签并且根本不打印到控制台。

或者我错过了什么??

java spring logging logback profiler
1个回答
0
投票

我的日志中也有同样的错误:

忽略未知属性 [springProfile]

正如@Gremi64提到的,为了使带有

springProfile
标签的logback工作,你必须将其从
logback.xml
命名为
logback-spring.xml

更多详细信息请参见spring官方文档

© www.soinside.com 2019 - 2024. All rights reserved.