首頁 Java java教程 深入理解Spring Boot的日誌管理詳細介紹

深入理解Spring Boot的日誌管理詳細介紹

May 11, 2018 am 11:16 AM

這篇文章主要給大家深入的介紹了Spring Boot日誌管理的相關資料,文中介紹的很詳細,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

Spring Boot在所有內部日誌中使用Commons Logging,但是預設配置也提供了對常用日誌的支持,
如:Java Util Logging ,Log4J, Log4J2和Logback。每種Logger都可以透過設定使用控制台或檔案輸出日誌內容。

日誌輸出格式

2016-08-19 10:22:04.233 INFO 7368 --- [   main] com.juzi.AsyncTest      : Started AsyncTest in 10.084 seconds (JVM running for 12.545)
登入後複製

輸出內容元素具體如下:

  • 時間日期— 精確到毫秒

  • 日誌等級— ERROR, WARN, INFO, DEBUG or TRACE

  • 進程ID

##分隔符號— — 標識實際日誌的開始


#執行緒名稱— 方括號括起來(可能會截斷控制台輸出)

Logger名稱— 通常使用原始碼的類別名稱

#日誌內容

#控制台輸出

#在Spring Boot中預設配置了ERROR、WARN和INFO等級的日誌輸出到控制台。

我們可以用兩種方式切換至DEBUG等級:     1.在執行指令後加入–debug標誌,如:

$ java -jar myapp.jar – debug


     2.在
application.properties

中設定

debug=true

,此屬性置為true的時候,核心Logger(包含嵌入式容器、hibernate、spring)會輸出更多內容,但是你自己套用的日誌並不會輸出為DEBUG等級。

多彩輸出

如果你的終端支援ANSI,設定彩色輸出會讓日誌更具可讀性。透過在

application.properties中設定spring.output.ansi.enabled參數來支援。      1.NEVER:停用ANSI-colored輸出(預設項目)

     2.DETECT:會檢查終端是否支援ANSI,是的話就採用彩色輸出(建議項目)     3.ALWAYS:總是使用ANSI-colored格式輸出,若終端不支援的時候,會有很多幹擾訊息,不建議使用

檔案輸出

Spring Boot預設配置只會輸出到控制台,並且不會記錄到檔案中,但是我們通常生產環境使用時都需要以檔案方式記錄。 若要增加檔案輸出,需要在application.properties中設定

logging.file

logging.path

屬性。      1.

logging.file

,設定文件,可以是絕對路徑,也可以是相對路徑。如:logging.file=my.log

     2.logging.path

,設定目錄,會在該目錄下建立

spring. log文件,並寫入日誌內容,如:logging.path=/var/log

日誌檔案會在10Mb大小的時候被截斷,產生新的日誌文件,預設等級為:ERROR、WARN、INFO *

等級控制

在Spring Boot中只需要在application.properties
中進行配置完成日誌記錄的等級控制。

設定格式:logging.level.*=LEVEL

     1.logging.level:日誌等級控制前綴,*為套件名稱或Logger名


     2.LEVEL:選項TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF

#範例:

##logging .level.com.juzi=DEBUG com.juzi

包下所有class以DEBUG等級輸出

logging.level.root=WARN root日誌以WARN等級輸出

自訂日誌配置
由於日誌服務一般都在ApplicationContext建立前就初始化了,它並不是必須透過Spring的設定檔控制。

因此透過系統屬性和傳統的Spring Boot外部設定檔依然可以很好的支援日誌控制和管理。

根據不同的日誌系統,你可以按以下規則組織設定檔名,就能被正確載入:

    1.Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy logback日志配置
     2.Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
     3.Log4j2:log4j2-spring.xml, log4j2.xml
     4.JDK (Java Util Logging):logging.properties
登入後複製
Spring Boot官方推薦優先使用有-spring的檔案名稱作為你的日誌配置(如使用logback-spring.xml,而不是logback.xml)


自訂輸出格式#########在Spring Boot中可以透過在### application.properties###設定以下參數控制輸出格式:######     1.###logging.pattern.console###:定義輸出至控制台的樣式(不支援JDK Logger)#### #####     2.###logging.pattern.file###:定義輸出到檔案的樣式(不支援JDK Logger)############

以上是深入理解Spring Boot的日誌管理詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1662
14
CakePHP 教程
1418
52
Laravel 教程
1311
25
PHP教程
1261
29
C# 教程
1234
24
Windows ISO檔太大BootCamp錯誤[修復] Windows ISO檔太大BootCamp錯誤[修復] Feb 19, 2024 pm 12:30 PM

如果在Mac電腦上使用BootCampAssistant時出現"TheWindowsISO檔案太大"的錯誤訊息,這可能是由於ISO檔案大小超過BootCampAssistant所支援的限制。解決這個問題的方法是使用其他工具來壓縮ISO檔案大小,以確保其在BootCampAssistant中能夠被處理。 BootCampAssistant是蘋果提供的一種方便的工具,用於在Mac電腦上安裝並運行Windows作業系統。它可以幫助使用者設定雙重開機系統,讓他們可以輕鬆地在啟動時選擇使用MacOS還是Wind

編程新範式,當Spring Boot遇上OpenAI 編程新範式,當Spring Boot遇上OpenAI Feb 01, 2024 pm 09:18 PM

2023年,AI技術已成為熱門話題,對各行業產生了巨大影響,程式設計領域尤其如此。人們越來越認識到AI技術的重要性,Spring社群也不例外。隨著GenAI(GeneralArtificialIntelligence)技術的不斷進步,簡化具備AI功能的應用程式的創建變得至關重要和迫切。在這個背景下,"SpringAI"應運而生,旨在簡化開發AI功能應用程式的過程,使其變得簡單直觀,避免不必要的複雜性。透過"SpringAI",開發者可以更輕鬆地建立具備AI功能的應用程序,將其變得更加易於使用和操作

利用Spring Boot以及Spring AI建構生成式人工智慧應用 利用Spring Boot以及Spring AI建構生成式人工智慧應用 Apr 28, 2024 am 11:46 AM

Spring+AI作為行業領導者,透過其強大、靈活的API和先進的功能,為各種行業提供了領先性的解決方案。在本專題中,我們將深入探討Spring+AI在各領域的應用範例,每個案例都將展示Spring+AI如何滿足特定需求,實現目標,並將這些LESSONSLEARNED擴展到更廣泛的應用。希望這個專題能對你有所啟發,更深入地理解和利用Spring+AI的無限可能。 Spring框架在軟體開發領域已經有超過20年的歷史,自SpringBoot1.0版本發布以來已有10年。現在,無人會質疑,Spring

spring編程式事務有哪些實作方式 spring編程式事務有哪些實作方式 Jan 08, 2024 am 10:23 AM

spring編程式事務的實作方式:1、使用TransactionTemplate;2、使用TransactionCallback和TransactionCallbackWithoutResult;3、使用Transactional註解;4、使用TransactionTemplate和@Transactional結合使用;5、自訂事務管理器。

Spring如何設定事務隔離級別 Spring如何設定事務隔離級別 Jan 26, 2024 pm 05:38 PM

Spring設定事務隔離等級的方法:1、使用@Transactional註解;2、在Spring設定檔中設定;3、使用PlatformTransactionManager;4、在Java配置類別中設定。詳細介紹:1、使用@Transactional註解,在需要進行事務管理的類別或方法上加入@Transactional註解,並在屬性中設定隔離等級;2、在Spring設定檔等等。

如何使用Hyperf框架進行日誌管理 如何使用Hyperf框架進行日誌管理 Oct 25, 2023 am 09:15 AM

如何使用Hyperf框架進行日誌管理導語:Hyerpf是一個基於PHP語言的高效能、高靈活性的協程框架,擁有豐富的元件和功能。日誌管理是任何一個專案必不可少的一部分,本文將介紹如何使用Hyperf框架來進行日誌管理,並提供具體的程式碼範例。一、安裝Hyperf框架首先,我們需要安裝Hyperf框架。可以透過Composer來安裝,開啟命令列工具輸入以下命令

如何進行C++程式碼的日誌管理? 如何進行C++程式碼的日誌管理? Nov 03, 2023 pm 02:38 PM

隨著軟體開發的不斷發展,日誌管理已經變成了程式碼開發過程中必不可少的部分,而C++作為一門較為複雜的程式語言,在進行程式碼開發時也需要進行日誌管理。本文將介紹C++程式碼的日誌管理原則及具體實現,希望對讀者有幫助。一、日誌管理原則確定日誌等級日誌等級代表了日誌資訊的重要性和緊急程度。在C++開發中,日誌等級分為DEBUG、INFO、WARN、ERROR和F

Spring 最常用的 7 大類註解,史上最強整理! Spring 最常用的 7 大類註解,史上最強整理! Jul 26, 2023 pm 04:38 PM

隨著技術的更新迭代,Java5.0開始支援註解。而作為java中的領導框架spring,自從更新了2.5版本之後也開始慢慢捨棄xml配置,更多使用註解來控制spring框架。

See all articles