程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> springboot日志,springboot日志配置

springboot日志,springboot日志配置

編輯:JAVA綜合教程

springboot日志,springboot日志配置


1.日志

Spring Boot內部日志系統使用的是Commons Logging,但開放底層的日志實現。默認為會Java Util Logging, Log4J, Log4J2和Logback提供配置。每種情況下都會預先配置使用控制台輸出,也可以使用可選的文件輸出。
默認情況下,如果你使用'Starter POMs',那麼就會使用Logback記錄日志。為了確保那些使用Java Util Logging, Commons Logging, Log4J或SLF4J的依賴庫能夠正常工作,正確的Logback路由也被包含進來。
注:如果上面的列表看起來令人困惑,不要擔心,Java有很多可用的日志框架。通常,你不需要改變日志依賴,Spring Boot默認的就能很好的工作。

2.日志格式

Spring Boot默認的日志輸出格式如下:

2014-03-05 10:57:51.112 INFO 45469 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/
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
2014-03-05 10:57:51.698 INFO 45469 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet'
2014-03-05 10:57:51.702 INFO 45469 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: '

輸出的節點(items)如下


1. 日期和時間 - 精確到毫秒,且易於排序。
2. 日志級別 - ERROR, WARN, INFO, DEBUG 或 TRACE。
3. Process ID。
4. 一個用於區分實際日志信息開頭的---分隔符。
5. 線程名 - 包括在方括號中(控制台輸出可能會被截斷)。
6. 日志名 - 通常是源class的類名(縮寫)。
7. 日志信息。

3.控制台輸出

默認的日志配置會在寫日志消息時將它們回顯到控制台。默認,ERROR, WARN和INFO級別的消息會被記錄

4.文件輸出

默認情況下,Spring Boot只會將日志記錄到控制台而不會寫進日志文件。如果除了輸出到控制台你還想寫入到日志文件,那你需要設置 logging.file 或 logging.path 屬性(例如在你的application.properties中)

下表顯示如何組合使用 logging.* :

日志文件每達到10M就會被輪換(分割),和控制台一樣,默認記錄ERROR, WARN和INFO級別的信息。

5.日志級別

所有支持的日志系統在Spring的Environment(例如在application.properties裡)都有通過'logging.level.*=LEVEL'('LEVEL'是TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF中的一個)設置的日志級別。
示例:application.properties

logging.level.org.springframework.web: DEBUG
logging.level.org.hibernate: ERROR

6.自定義日志配置

通過將適當的庫添加到classpath,可以激活各種日志系統。然後在classpath的根目錄(root)或通過Spring Environment的 logging.config 屬性指定的位置提供一個合適的配置文件來達到進一步的定制(注意由於日志是在ApplicationContext被創建之前初始化的,所以不可能在Spring的@Configuration文件中,通過@PropertySources控制日志。系統屬性和平常的Spring Boot外部配置文件能正常工作)。根據你的日志系統,下面的文件會被加載:

為了幫助定制一些其他的屬性,從Spring的Envrionment轉換到系統屬性:

所有支持的日志系統在解析它們的配置文件時都能查詢系統屬性。具體可以參考spring-boot.jar中的默認配置。
注:在運行可執行的jar時,Java Util Logging有類加載問題,我們建議你盡可能避免使用它。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved