91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringBoot項目集成日志的實現方法

發布時間:2020-09-01 00:26:57 來源:腳本之家 閱讀:190 作者:讓蛋蛋飛 欄目:編程語言

SpringBoot使用Commons Logging進行所有內部日志記錄,但保留底層日志實現。默認提供了Java Util Logging, Log4j2 和Logback日志配置。在每種情況下,都預先配置為使用控制臺輸出,并且還提供了可選的文件輸出。(來自官網)

SpringBoot項目集成日志的實現方法

日志格式

SpringBoot默認的日志輸出如下所示:

2014-03-05 10:57:51.112 INFO 45469 --- [   main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/7.0.52
2014-03-05 10:57:51.253 INFO 45469 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]  : Initializing Spring embedded WebApplicationContext
2014-03-05 10:57:51.253 INFO 45469 --- [ost-startStop-1] o.s.web.context.ContextLoader   : Root WebApplicationContext: initialization completed in 1358 ms
2014-03-05 10:57:51.698 INFO 45469 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2014-03-05 10:57:51.702 INFO 45469 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]

輸出以下項目:

  • 日期和時間:毫秒精度并且容易排序
  • 日志級別:ERROR, WARN, INFO, DEBUG, TRACE
  • 進程ID
  • --- 分隔符來區分實際日志的開始
  • 線程名:括在方括號中(可能會被截斷)
  • 日志記錄器名:這通常是源類名(通常縮寫)
  • 日志信息

Logback中沒有FATAL(致命)級別,它被映射到ERROR級別

日志格式 來自 官網 )

控制臺輸出

SpringBoot控制臺輸出默認支持三種日志級別:ERROR,WARN和INFO

如果還想輸出別的級別日志,例如DEBUG或TRACE(只能二選一),如下操作:

啟動應用程序時,增加--debug或--trace標志

$ java -jar myapp.jar -- debug

說明:使用debug調試模式啟動應用程序不會將應用程序配置為使用DEBUG級別記錄日志。復制代碼

在application.yml中(或application.properties中)增加debug: true或trace: true(或debug=true/trace=true)

application.yml文件:

debug: true

application.properties文件:

debug=true

多彩輸出:

如果終端支持ANSI(表示顏色),可以設置彩色輸出。

application.yml中設置:

# 檢查終端是否支持ANSI,是的話就采用彩色輸出
spring:
 output:
 ansi:
  enabled: detect

application.properties中設置:

# 檢查終端是否支持ANSI,是的話就采用彩色輸出
spring.output.ansi.enabled=detect

文件輸出

SpringBoot默認配置日志只會輸出到控制臺,并不會記錄到文件中,但通常生產環境需要把日志記錄到文件中。

配置屬性如下:

  • logging.file: 設置日志輸出文件,絕對路徑或相對路徑都可以。
  • logging.path: 設置日志輸出目錄,會在該目錄下創建spring.log文件,并寫入日志內容。

日志文件在達到10 MB時滾動輸出,并且與控制臺輸出一樣,默認情況下會記錄ERROR,WARN和INFO級別的日志。可以使用logging.file.max-size屬性更改大小限制。除非已設置logging.file.max-history屬性,否則以前輪換的日志文件將被無限期歸檔。(來自官網)

注意點:

日志記錄系統在應用程序生命周期的早期初始化。因此,在通過@PropertySource注解加載的屬性文件中找不到日志記錄屬性。

日志記錄屬性獨立于實際的日志記錄基礎結構。因此,SpringBoot不管理特定的配置密鑰(例如Logback的logback.configurationFile)。 (來自官網)

application.yml中設置:

logging:
 # 設置相對路徑的日志輸出文件
 file: log/my.log
 # 設置日志輸出路徑,默認會生成log/spring.log日志文件
 path: log
 
logging:
 # 設置絕對路徑的日志輸出文件
 file: D:\ideaProjects\SpringBootDemo\log1\mylog1.log
 # 設置日志輸出路徑,默認會生成log/spring.log日志文件
 path: log

application.properties中設置:

logging.file=log/my.log
logging.path=log

SpringBoot項目集成日志的實現方法

級別控制

配置屬性格式:logging.level.*=LEVEL

  • logging.level: 日志級別控制前綴,*為包名或Logger名
  • LEVEL: 選項TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF

application.yml中設置:

logging:
 level:
 # com.example.demo包下所有class以DEBUG級別輸出
 com.example.demo: DEBUG
 # root日志以INFO級別輸出
 root: INFO

說明:
配置日志級別值大小寫均可,例如:設置成debug/info

application.properties中設置:

logging.level.com.example.demo=DEBUG
logging.level.root=INFO

說明:配置日志級別值大小寫均可,例如:設置成debug/info

刨根問底,死磕自己(選看)

1. 日志級別設置選項

源碼中系統日志級別是個枚舉類,列出了所有日志級別,如下截圖:

SpringBoot項目集成日志的實現方法

根據在application.yml中設置的LEVEL值,匹配系統日志枚舉類,最終設置系統相應包下的日志級別。

SpringBoot項目集成日志的實現方法

SpringBoot官網: https://docs.spring.io/spring-boot/docs/2.1.2.RELEASE/reference/htmlsingle/

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴业县| 册亨县| 泰兴市| 五原县| 东海县| 神池县| 香格里拉县| 海口市| 阳山县| 平昌县| 莲花县| 兖州市| 汉寿县| 延津县| 扎兰屯市| 绩溪县| 司法| 象州县| 扶风县| 哈巴河县| 广南县| 彭泽县| 阿克陶县| 重庆市| 措美县| 威宁| 巴塘县| 正定县| 理塘县| 曲松县| 三明市| 名山县| 合江县| 阳朔县| 冕宁县| 靖西县| 东港市| 琼结县| 临朐县| 黔西| 常宁市|