欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot項(xiàng)目集成日志的實(shí)現(xiàn)方法

 更新時間:2019年02月13日 14:35:31   作者:讓蛋蛋飛  
這篇文章主要介紹了SpringBoot項(xiàng)目集成日志的實(shí)現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

SpringBoot使用Commons Logging進(jìn)行所有內(nèi)部日志記錄,但保留底層日志實(shí)現(xiàn)。默認(rèn)提供了Java Util Logging, Log4j2Logback日志配置。在每種情況下,都預(yù)先配置為使用控制臺輸出,并且還提供了可選的文件輸出。(來自官網(wǎng))

日志格式

SpringBoot默認(rèn)的日志輸出如下所示:

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: [/*]

輸出以下項(xiàng)目:

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

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

日志格式 來自 官網(wǎng)

控制臺輸出

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

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

啟動應(yīng)用程序時,增加--debug或--trace標(biāo)志

$ java -jar myapp.jar -- debug

說明:使用debug調(diào)試模式啟動應(yīng)用程序不會將應(yīng)用程序配置為使用DEBUG級別記錄日志。復(fù)制代碼

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

application.yml文件:

debug: true

application.properties文件:

debug=true

多彩輸出:

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

application.yml中設(shè)置:

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

application.properties中設(shè)置:

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

文件輸出

SpringBoot默認(rèn)配置日志只會輸出到控制臺,并不會記錄到文件中,但通常生產(chǎn)環(huán)境需要把日志記錄到文件中。

配置屬性如下:

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

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

注意點(diǎn):

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

日志記錄屬性獨(dú)立于實(shí)際的日志記錄基礎(chǔ)結(jié)構(gòu)。因此,SpringBoot不管理特定的配置密鑰(例如Logback的logback.configurationFile)。 (來自官網(wǎng))

application.yml中設(shè)置:

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

application.properties中設(shè)置:

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

級別控制

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

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

application.yml中設(shè)置:

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

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

application.properties中設(shè)置:

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

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

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

1. 日志級別設(shè)置選項(xiàng)

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

根據(jù)在application.yml中設(shè)置的LEVEL值,匹配系統(tǒng)日志枚舉類,最終設(shè)置系統(tǒng)相應(yīng)包下的日志級別。

SpringBoot官網(wǎng): https://docs.spring.io/spring-boot/docs/2.1.2.RELEASE/reference/htmlsingle/

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java遍歷機(jī)制性能的比較詳解

    java遍歷機(jī)制性能的比較詳解

    這篇文章主要給大家介紹了關(guān)于java遍歷機(jī)制性能比較的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • SpringBoot MyBatis保姆級整合教程

    SpringBoot MyBatis保姆級整合教程

    因?yàn)镾pring Boot框架開發(fā)的便利性,所以實(shí)現(xiàn)Spring Boot與數(shù)據(jù)訪問層框架(例如MyBatis)的整合非常簡單,主要是引入對應(yīng)的依賴啟動器,并進(jìn)行數(shù)據(jù)庫相關(guān)參數(shù)設(shè)置即可
    2022-06-06
  • SpringBoot+EasyPoi實(shí)現(xiàn)excel導(dǎo)出功能

    SpringBoot+EasyPoi實(shí)現(xiàn)excel導(dǎo)出功能

    最新小編遇到這樣一個需求,根據(jù)檢索條件查詢列表并將結(jié)果導(dǎo)出到excel,實(shí)現(xiàn)過程也非常簡單,感興趣的朋友跟隨小編一起看看吧
    2021-09-09
  • Java環(huán)境中MyBatis與Spring或Spring MVC框架的集成方法

    Java環(huán)境中MyBatis與Spring或Spring MVC框架的集成方法

    和MyBatis類似,Spring或者Spring MVC框架在Web應(yīng)用程序的運(yùn)作中同樣主要負(fù)責(zé)處理數(shù)據(jù)庫事務(wù),這里我們就來看一下Java環(huán)境中MyBatis與Spring或Spring MVC框架的集成方法
    2016-06-06
  • SpringBoot JPA 表關(guān)聯(lián)查詢實(shí)例

    SpringBoot JPA 表關(guān)聯(lián)查詢實(shí)例

    本篇文章主要介紹了SpringBoot JPA 表關(guān)聯(lián)查詢實(shí)例,使用JPA原生的findBy語句實(shí)現(xiàn),具有一定的參考價值,有興趣的可以了解一下。
    2017-04-04
  • 解決常見的Eclipse SVN插件報錯方法詳解

    解決常見的Eclipse SVN插件報錯方法詳解

    本篇文章是對常見的Eclipse SVN插件報錯方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • SpringBoot?thymeleaf實(shí)現(xiàn)餅狀圖與柱形圖流程介紹

    SpringBoot?thymeleaf實(shí)現(xiàn)餅狀圖與柱形圖流程介紹

    這篇文章主要介紹了SpringBoot?thymeleaf實(shí)現(xiàn)餅狀圖與柱形圖流程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-12-12
  • 幾句話說清session,cookie和token的區(qū)別及說明

    幾句話說清session,cookie和token的區(qū)別及說明

    這篇文章主要介紹了幾句話說清session,cookie和token的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • java常用工具類 UUID、Map工具類

    java常用工具類 UUID、Map工具類

    這篇文章主要為大家詳細(xì)介紹了Java常用工具類,包括UUID工具類、Map工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 詳解Spring MVC 集成EHCache緩存

    詳解Spring MVC 集成EHCache緩存

    本篇文章主要介紹了詳解Spring MVC 集成EHCache緩存,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論