springboot動態(tài)調(diào)整日志級別的操作大全
1.springboot使用log4j2
springboot使用的common-logging,底層兼容各種日志框架如,log4j2,slf4,logback等,默認(rèn)底層使用的是logback,我們可以去除logback的依賴,引入log4j2的starter,
如下:
2.指定日志配置文件和日志等級
(此配置不限于log4j2,也適用于其他日志框架)
在resources目錄下加入log4j2的xml配置文件,默認(rèn)spring-boot會加載classpath下面的名為log4j2.xml,或log4j2-file.xml的日志配置文件。
也可以在spring的配置文件中指定需要加載的日志配置文件,以及動態(tài)調(diào)整各個(gè)目錄的日志等級
logging: config: classpath:log4j2.xml level: com.ly: debug org.springframework : info
該參數(shù)可以通過系統(tǒng)參數(shù),或啟動參數(shù),覆蓋jar內(nèi)的配置項(xiàng)。
java -jar -Dlogging.config="xxx" test.jar java -jar test.jar --logging.config="xxx"
3.通過springboot-actuator動態(tài)調(diào)整日志級別
(適用于生產(chǎn)環(huán)境)
spring-boot-actuator是springboot的一個(gè)監(jiān)控工具,它可以以http或JMX的方式暴露一些endPoint,內(nèi)置的endpoint有 health,info,beans,loggers等。
我們可以通過loggers來動態(tài)調(diào)整日志級別,無需重啟服務(wù)。
如果是想使用webEndPoint的話,項(xiàng)目必須包含web-starter相關(guān)的依賴,因?yàn)閍ctuator 的httpEndPoint是以mvc的方式集成的。
3.1 在pom文件中引入依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
3.2 在配置文件中開啟loggers的endPoint端點(diǎn)
management: endpoints: web: exposure: include: loggers
3.3 發(fā)起http請求改變?nèi)罩炯墑e
URI默認(rèn)是 /actuator+endpoint+包名
$ curl 'http://localhost:8080/actuator/loggers/com.example' -i -X POST \ -H 'Content-Type: application/json' \ -d '{"configuredLevel":"debug"}'
原理可以看LoggersEndPoint的實(shí)現(xiàn)
4.spring boot日志初始化原理
有個(gè)loggingApplicationListener的監(jiān)聽器,監(jiān)聽了spring的事件,讀取了spring容器中的日志配置,進(jìn)行了日志的初始化。
到此這篇關(guān)于springboot動態(tài)調(diào)整日志級別的文章就介紹到這了,更多相關(guān)springboot調(diào)整日志級別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java底層基于鏈表實(shí)現(xiàn)集合和映射--集合Set操作詳解
這篇文章主要介紹了Java底層基于鏈表實(shí)現(xiàn)集合和映射集合Set操作,結(jié)合實(shí)例形式詳細(xì)分析了Java使用鏈表實(shí)現(xiàn)集合和映射相關(guān)原理、操作技巧與注意事項(xiàng),需要的朋友可以參考下2020-03-03Hadoop源碼分析四遠(yuǎn)程debug調(diào)試
本篇是Hadoop源碼分析系列文章第四篇,主要介紹一下Hadoop的遠(yuǎn)程debug調(diào)試步驟,后續(xù)本系列文章會持續(xù)更新,有需要的朋友可以借鑒參考下2021-09-09Java利用多線程和分塊實(shí)現(xiàn)快速讀取文件
在工作中經(jīng)常會有接收文件并且讀取落庫的需求,讀取方式都是串行讀取,所以本文主要為大家介紹一下如何利用多線程和分塊實(shí)現(xiàn)快速讀取文件,希望對大家有所幫助2023-09-09Spring注解@RestControllerAdvice原理解析
這篇文章主要介紹了Spring注解@RestControllerAdvice原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11