[JAVA][logback][問題] logback不打印日志到文件


logback-spring.xml (非完整xml,舉例使用)

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
    <!-- 控制台輸出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!--其他配置-->
    </appender>

    <!--配置日志文件(File)-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--其他配置-->   
    </appender>
    

    <!-- 日志級別排序為: TRACE < DEBUG < INFO < WARN < ERROR -->
    <root level="Info">
        <!-- <appender-ref ref="STDOUT"/> -->
        <appender-ref ref="FILE"/>
    </root>
</configuration>
View Code

背景:

1、手工指定logback-spring.xml路徑

-Dlogback.configurationFile=D:/fake_path/logback-spring.xml

2、root同時配置console和文件打印

<root level="Info">
<appender-ref ref="STDOUT"/>
<appender-ref ref="FILE"/>
</root>

問題:

  始終只有少量日志打印到了文件里,console打印正常

  root中去掉console打印,依然是少量日志打印文件里,console也依然有大量日志打印

 

查看日志發現日志打印:

... WARN 8940 --- [           main] o.s.b.l.logback.LogbackLoggingSystem     : Ignoring 'logback.configurationFile' system property. Please use 'logging.config' instead.

解決:

    將-Dlogback.configurationFile替換成-Dlogging.config

 

說明1、logback在打印日志時,會遍歷所有的logger屬性配置,找不到配置時使用默認的root屬性配置

說明2、root去掉console配置時,依然有日志打印參考:

  https://logback.qos.ch/manual/configuration.html

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM