中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

spring boot 2日志怎么實現

發布時間:2021-12-27 17:16:42 來源:億速云 閱讀:146 作者:iii 欄目:大數據

這篇文章主要講解了“spring boot 2日志怎么實現”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“spring boot 2日志怎么實現”吧!

Spring Boot除了commons-loggingAPI外沒有其他強制性的日志依賴,你有很多可選的日志實現。想要使用Logback,你需要包含它及jcl-over-slf4j(它實現了Commons Logging API)。最簡單的方式是通過依賴spring-boot-starter-logging的starters。對于一個web應用程序,你只需添加spring-boot-starter-web依賴,因為它依賴于logging starter。例如,使用Maven:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

Spring Boot有一個LoggingSystem抽象,用于嘗試通過classpath上下文配置日志系統。如果Logback可用,則首選它。如果你唯一需要做的就是設置不同日志級別,那可以通過在application.properties中使用logging.level前綴實現,比如:

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

你也可以使用logging.file設置日志文件的位置(除控制臺之外,默認會輸出到控制臺)。

想要對日志系統進行更細粒度的配置,你需要使用LoggingSystem支持的原生配置格式。默認情況下,Spring Boot從系統的默認位置加載原生配置(比如對于Logback為classpath:logback.xml),但你可以使用logging.config屬性設置配置文件的位置。

配置Logback

如果你將logback.xml放到classpath根目錄下,那它將會被從這加載(或logback-spring.xml充分利用Boot提供的模板特性)。Spring Boot提供一個默認的基本配置,如果你只是設置日志級別,那你可以包含它,比如:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<logger name="org.springframework.web" level="DEBUG"/>
</configuration>

如果查看spring-boot jar中的base.xml,你將會看到LoggingSystem為你創建的很多有用的系統屬性,比如:

  • ${PID},當前進程id。

  • ${LOG_FILE},如果在Boot外部配置中設置了logging.file。

  • ${LOG_PATH},如果設置了logging.path(表示日志文件產生的目錄)。

  • ${LOG_EXCEPTION_CONVERSION_WORD},如果在Boot外部配置中設置了logging.exception-conversion-word。

Spring Boot也提供使用自定義的Logback轉換器在控制臺上輸出一些漂亮的彩色ANSI日志信息(不是日志文件),具體參考默認的base.xml配置。

如果Groovy在classpath下,你也可以使用logback.groovy配置Logback。

配置logback只輸出到文件

如果想禁用控制臺日志記錄,只將輸出寫入文件中,你需要一個只導入file-appender.xml而不是console-appender.xml的自定義logback-spring.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}/}spring.log}"/>
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />
<root level="INFO">
<appender-ref ref="FILE" />
</root>
</configuration>

你還需要將logging.file添加到application.properties:

logging.file=myapplication.log

配置Log4j

如果Log4j 2出現在classpath下,Spring Boot會將其作為日志配置。如果你正在使用starters進行依賴裝配,這意味著你需要排除Logback,然后包含log4j 2。如果不使用starters,除了添加Log4j 2,你還需要提供jcl-over-slf4j依賴(至少)。

最簡單的方式可能就是通過starters,盡管它需要排除一些依賴,比如,在Maven中:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

注 Log4j starters會收集好依賴以滿足普通日志記錄的需求(比如,Tomcat中使用java.util.logging,但使用Log4j 2作為輸出),具體查看Actuator Log4j 2的示例,了解如何將它用于實戰。

使用YAML或JSON配置Log4j2

除了它的默認XML配置格式,Log4j 2也支持YAML和JSON配置文件。想使用其他配置文件格式配置Log4j 2,你需要添加合適的依賴到classpath,并以匹配所選格式的方式命名配置文件:

格式依賴文件名
YAMLcom.fasterxml.jackson.core:jackson-databindcom.fasterxml.jackson.dataformat:jackson-dataformat-yamllog4j2.yamllog4j2.yml
JSONcom.fasterxml.jackson.core:jackson-databindlog4j2.jsonlog4j2.jsn

感謝各位的閱讀,以上就是“spring boot 2日志怎么實現”的內容了,經過本文的學習后,相信大家對spring boot 2日志怎么實現這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

AI

内丘县| 图片| 偏关县| 德化县| 富裕县| 泾川县| 新津县| 乌拉特后旗| 红河县| 和政县| 奉新县| 轮台县| 汶上县| 丹巴县| 张家口市| 余干县| 贞丰县| 固原市| 望都县| 虹口区| 乐安县| 长海县| 赞皇县| 库车县| 班戈县| 台前县| 英吉沙县| 伊吾县| 东方市| 信丰县| 资讯| 新野县| 贵南县| 方城县| 临潭县| 湖南省| 潼关县| 龙胜| 盐亭县| 南投市| 吕梁市|