當前位置:
首頁 > 知識 > Spring Boot自定義Logback

Spring Boot自定義Logback

Spring Boot自定義Logback

Spring Boot

Spring Boot自定義Logback

Spring

Spring Boot自定義Logback

Java

在《Java面試題 Part9 Spring事務的處理過程》中,為了看一下Spring AOP對事務的處理,我添加了log的配置:

在resources目錄下增加logback-spring.xml,內容如下:

Spring Boot自定義Logback

logback-spring.xml

執行一次請求,列出如下日誌:

Spring Boot自定義Logback

日誌輸出

但是在實際工作中,這些配置滿足不了我們的個性化需求,比如:精簡一下log內容(把PID去掉),輸出SQL,指定log文件等。

後面將對logback-spring.xml進行改造。

base.xml

之前的logback-spring.xml文件,首先就引入了base.xml,這個文件就在spring-boot這個jar內的

Spring Boot自定義Logback

base.xml位置

打開可以看到

Spring Boot自定義Logback

base.xml內容

我們的改造就基於對這些配置與文件的學習。


默認配置

在logback-spring.xml中,我們去掉對base.xml的引用,改為defaults.xml

Spring Boot自定義Logback

自定義logback配置

注意,實際工作中root這個節點一定要放在文件的最後面,後面的配置內容要在include和root兩個節點之間。


控制台

在defaults.xml中,有個"CONSOLE_LOG_PATTERN"的屬性,這個就是控制台輸出的格式,因為我不想要顯示PID,所以仿照defaults.xml與coosole-appender.xml新建了如下屬性:

Spring Boot自定義Logback

控制台輸出配置

輸出的格式就是對"CONSOLE_LOG_PATTERN"做了刪減。

注意三個紅框都要修改。這麼做,控制台輸出的log格式就可以自定義,並且還是彩色的。


日誌文件

默認的日誌文件輸出配置在file-appender.xml,仿照其做如下配置:

Spring Boot自定義Logback

日誌文件輸出


配置要顯示日誌的類

Spring Boot自定義Logback

日誌輸出層

這裡我少寫了Service層的日誌,實際中應該加上。

代碼:

Spring Boot自定義Logback

日誌代碼


結果

Spring Boot自定義Logback

自定義日誌輸出

對比第一個日誌,PID就沒了,但是彩色還保留著。

第一個紅框就是SQL語句。

第二個紅框里,在代碼中我們寫了Debug MSG,但是在配置里我們配置的是info,所以只輸出了info、warn、error信息。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Java個人學習心得 的精彩文章:

Docker掛載主機目錄(基於Tomcat)
Docker與主機互傳文件(基於Tomcat)
Spring Cloud Feign重試
構建運行Spring Boot的Docker
Spring Cloud消息隊列與消息匯流排更新Config

TAG:Java個人學習心得 |