前言:該篇文章基本上是翻譯的官方文檔! spring boot使用Commons Logging作為內(nèi)部的日志系統(tǒng),并且給Java Util Logging,Log4J2以及Logback都提供了默認(rèn)的配置。如果使用了spring boot的Starters,那么默認(rèn)會(huì)使用Logback用于記錄日志。 一、Log format spring boot中默認(rèn)的日志輸出格式如下:
1、日期和時(shí)間--精確到毫秒,并按照時(shí)間進(jìn)行簡(jiǎn)單的排序 2、日志級(jí)別--ERROR,WARN,INFO,DEBUG,TRACE 3、進(jìn)程ID號(hào) 4、日志內(nèi)容,用"---"分隔符分開(kāi) 5、線程名字--括在方括號(hào)中 6、日志的名字--通常對(duì)應(yīng)的是類(lèi)名 注意:Logback沒(méi)有FATAL級(jí)別(映射到ERROR) 二、控制臺(tái)輸出 默認(rèn)的日志配置將在寫(xiě)入控制臺(tái)時(shí)回顯消息,默認(rèn)會(huì)回顯ERROR,WARN,和INFO級(jí)別的消息,你同樣可以在啟動(dòng)的時(shí)候,啟用debug模式,啟動(dòng)命令如下:java -jar yourapp.jar --debug 注意:你同樣可以在application.properties配置文件中指定debug=true,來(lái)開(kāi)啟debug,模式 一旦開(kāi)啟了debug模式,那么控制臺(tái)同時(shí)會(huì)輸出容器信息,hibernate信息和spring boot的信息 三、文件輸出 默認(rèn)情況下,spring boot只會(huì)將日志輸出到console,而不會(huì)輸出到日志文件中,如果你想將日志寫(xiě)到日志文件中,那么需要在application.properties配置文件中設(shè)置logging.file或者是logging.path 注意:此處是或者的關(guān)系,也就是說(shuō),你配置logging.file或者是logging.path,效果是一樣的。 下面的表格將顯示如何進(jìn)行配置文件輸出:
注意:日志的配置是獨(dú)立與實(shí)際的日志組件的,也就是說(shuō),如果為L(zhǎng)ogback指定配置的屬性為logback.configurationFile,那么spring boot將不會(huì)管理該日志組件。 四、日志級(jí)別 所有支持的日志系統(tǒng)都可以通過(guò)Spring Environment來(lái)指定日志級(jí)別,例如application.properties,可以使用“l(fā)ogging.level.*=LEVEL”來(lái)指定日志的級(jí)別,"LEVEL"的取值可以是TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF。配置示例如下:
五、自定義日志輸出格式 我們可以通過(guò)logging.pattern.file以及l(fā)ogging.pattern.level來(lái)配置我們需要的日志輸出格式,例如:
六、使用Log4j打日志 前面說(shuō)道,我們默認(rèn)的是使用Logback來(lái)作為日志系統(tǒng)的,那么,如果我們想使用Log4j來(lái)打日志,怎么辦了,我們需要在pom文件中加上Log4j的starter同時(shí)排除Logback,如下:
|
|
來(lái)自: WindySky > 《sping架構(gòu)體系》