首頁 > 軟體

springboot如何去除debug紀錄檔

2022-06-30 22:00:12

springboot去除控制檯列印的debug紀錄檔

1.建立logback-spring.xml檔案

檔案內容如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
    <!--定義紀錄檔檔案的儲存地址 勿在 LogBack 的設定中使用相對路徑-->
    <property name="LOG_HOME" value="/logs/log" />
    <!-- 控制檯輸出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <!--格式化輸出:%d表示日期,%thread表示執行緒名,%-5level:級別從左顯示5個字元寬度%msg:紀錄檔訊息,%n是換行符-->
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
        </encoder>
    </appender>
    <!-- 按照每天生成紀錄檔檔案 -->
    <appender name="FILE"  class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!--紀錄檔檔案輸出的檔名-->
            <FileNamePattern>${LOG_HOME}/edusystem.log.%d{yyyy-MM-dd}.log</FileNamePattern>
            <!--紀錄檔檔案保留天數-->
            <MaxHistory>30</MaxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <!--格式化輸出:%d表示日期,%thread表示執行緒名,%-5level:級別從左顯示5個字元寬度%msg:紀錄檔訊息,%n是換行符-->
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
        </encoder>
        <!--紀錄檔檔案最大的大小-->
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <MaxFileSize>10MB</MaxFileSize>
        </triggeringPolicy>
    </appender>
    <!--myibatis log configure
    <logger name="com.apache.ibatis" level="TRACE"/>
    <logger name="java.sql.Connection" level="DEBUG"/>
    <logger name="java.sql.Statement" level="DEBUG"/>
    <logger name="java.sql.PreparedStatement" level="DEBUG"/>-->
    
    <!-- mybatis列印sql語句 -->
    <logger name="com.edu.dao" level="DEBUG"></logger>

    <!-- 紀錄檔輸出級別 -->
    <root level="INFO">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>  
</configuration>

2.給application.properties檔案

新增如下內容 

完成以上內容重啟專案,控制檯列印的debug就不見了,這裡面還將後臺列印的sql也列印出來了,方便定位紀錄檔

無法控制springboot中的debug紀錄檔 問題

最近寫的程式碼中,用到了 SpringBoot 和 log4j 紀錄檔,由於SpringBoot 中有自帶的紀錄檔系統,所以log4j.properties 無法控制 SpringBoot 中的紀錄檔資訊,老是出現:

網上有一些參考文章,但是解決不了我的問題。

最後試了一下,這樣解決的

感覺上就是把:SpringBoot中真正實現紀錄檔的部分去掉就可以了...

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com