spring boot -log

spring boot內嵌了日誌記錄,提供了java util.logging,log4j2,logback的默認配置。java

默認狀況下,若是使用了 spring boot系列的stater依賴,則默認使用logback來記錄日誌,logback路由,同時確保java util logging,commons logging,log4j,log4j2能正常使用。web

雖然spring boot提供多種日誌框架,可是並不用擔憂,通常狀況下咱們並不須要改變日誌的依賴項,使用spring boot爲咱們配置的默認日誌就能夠了。spring

一,日誌格式app

2014-03-05 10:57:51.253  INFO 45469 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext

格式爲框架

1,時間,毫秒級編碼

2,日誌級別 INFO 還有 DEBUG WARN 等spa

3,進程idhibernate

4,線程名線程

5,記錄器名稱debug

6,日誌內容

 

二,控制檯輸出 console output

默認error,warn,info級別的日誌會打印到控制檯。若是想看debug的日誌,能夠直接啓動時

執行 java -jar xx.jar --debug

也能夠在application.yml/properties中配置debug =true

當設置爲debug模式後,將會記錄更多的日誌信息

也能夠打開trace模式,記錄日誌跟蹤。

 

三,帶顏色的輸出

若是咱們的終端命令窗口支持ansi,那麼調配不一樣的顏色有助於增長可讀性。咱們能夠經過

spring.output.ansi 配置去設置一個新的值來覆蓋默認值。

顏色編碼是使用%clr配置的。以簡單的方式輸出不一樣顏色的日誌。

默認的顏色爲: fatal,error爲紅色,warn爲黃色,info,debug,trace爲綠色

固然咱們也能夠設置某些格式的文本的顏色

%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){yellow}

四,日誌文件

默認狀況下, spring boot只是打印到控制檯,沒有將日誌寫到文件中。若是想要寫日誌須要在application.yml中配置

logging.file 或者logging.path

兩個只能配置一個,若是配置logging.file,則在當前目錄下生成一個日誌文件

若是配置了logging.path,則會在指定路徑下生成日誌。

spring boot的日誌默認10M會切割。

同時,log能夠對不一樣的package設置不一樣的日誌級別,更精確靈活。如

logging.level.root=warn

logging.level.org.springframework.web=debug

logging.level.org.hibernate =error

這有助於減小一些無關的日誌打印,幫助咱們更好的排查問題。

五,自定義配置文件

能夠經過配置logger.config指定一個xml配置文件進一步定製日誌的屬性。

你也能夠強制spring boot使用指定的日誌系統。你也能夠將值設爲none來禁止使用日誌系統。

由於日誌系統初始化是在建立applicationContext以前,因此註解形式不可用,只能經過配置文件配置屬性,來更改日誌系統或禁用日誌系統。

根據日誌系統,一下文件會被加載。spring boot在此建議日誌配置文件的命名規則最好是xxx-spring.xml

這樣才能徹底保證會被初始化。

Logging System Customization

Logback

logback-spring.xmllogback-spring.groovylogback.xml or logback.groovy

Log4j2

log4j2-spring.xml or log4j2.xml

JDK (Java Util Logging)

logging.properties

 spring boot 直接支持配置的一些屬性

Spring Environment System Property Comments

logging.exception-conversion-word

LOG_EXCEPTION_CONVERSION_WORD

記錄異常時出現的轉換詞

logging.file

LOG_FILE

默認的日誌文件名稱 當前路徑直接生成

logging.path

LOG_PATH

默認的日誌文件名稱 帶路徑

logging.pattern.console

CONSOLE_LOG_PATTERN

控制檯支持的日誌格式

logging.pattern.file

FILE_LOG_PATTERN

日誌文件支持的日誌格式

logging.pattern.level

LOG_LEVEL_PATTERN

日誌級別

PID

PID

當前進程id

相關文章
相關標籤/搜索