最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SpringBoot動態(tài)修改日志級別的操作是什么-創(chuàng)新互聯(lián)

這篇文章主要介紹了SpringBoot動態(tài)修改日志級別的操作是什么的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇SpringBoot動態(tài)修改日志級別的操作是什么文章都會有所收獲,下面我們一起來看看吧。

專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計制作,服務(wù)好的網(wǎng)站設(shè)計公司,成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)負(fù)責(zé)任的成都網(wǎng)站制作公司!

傳統(tǒng)的做法一般是:

1、配置里修改日志級別

2、重啟應(yīng)用

3、問題復(fù)現(xiàn)查看報錯日志排查問題

這個過程需要重啟應(yīng)用,比較麻煩,效率較低,而且針對大型在線項目,不可能隨便停機(jī)重啟。那么有沒有一種方式在不重啟應(yīng)用的情況下實現(xiàn)動態(tài)修改日志級別呢?

下面,讓老萬教你如何通過SpringBoot的actuator組件來實現(xiàn)動態(tài)修改日志級別。

一、添加依賴


        org.springframework.boot
        spring-boot-starter-actuator

二、配置actuator暴露的端口

#啟用actuator端口
management.endpoints.enabled-by-default=fasle
#設(shè)置actuator的訪問根路徑,默認(rèn)是/actuator
management.endpoints.web.base-path=/message
#啟用的端點
management.endpoints.web.exposure.include=loggers

這里我修改了actuator的默認(rèn)訪問路徑/actuator,改為/message,為的是和項目的基礎(chǔ)訪問路徑保存一致。

啟用端口的2中配置方法:

方式一:(推薦)

management.endpoints.web.exposure.include=loggers

方式二:(這種方式測試沒有生效)

management.endpoint.loggers.enabled=true

補(bǔ)充:如何禁用info端口

management.endpoints.enabled-by-default=false
management.endpoint.info.enabled=true

關(guān)于actuator組件被稱為spring boot的4大組件之一,功能強(qiáng)大,大家在網(wǎng)上自己找些資料進(jìn)一步了解。

actuator的endpoint端口說明:

ID描述默認(rèn)啟用
auditevents顯示當(dāng)前應(yīng)用程序的審計事件信息Yes
beans顯示一個應(yīng)用中所有Spring Beans的完整列表Yes
conditions顯示配置類和自動配置類(configuration and auto-configuration classes)的狀態(tài)及它們被應(yīng)用或未被應(yīng)用的原因Yes
configprops顯示一個所有@ConfigurationProperties的集合列表Yes
env顯示來自Spring的 ConfigurableEnvironment的屬性Yes
flyway顯示數(shù)據(jù)庫遷移路徑,如果有的話Yes
health顯示應(yīng)用的健康信息(當(dāng)使用一個未認(rèn)證連接訪問時顯示一個簡單的"status",使用認(rèn)證連接訪問則顯示全部信息詳情)Yes
info顯示任意的應(yīng)用信息Yes
liquibase展示任何Liquibase數(shù)據(jù)庫遷移路徑,如果有的話Yes
metrics展示當(dāng)前應(yīng)用的metrics信息Yes
mappings顯示一個所有@RequestMapping路徑的集合列表Yes
scheduledtasks顯示應(yīng)用程序中的計劃任務(wù)Yes
sessions允許從Spring會話支持的會話存儲中檢索和刪除(retrieval and deletion)用戶會話。使用Spring Session對反應(yīng)性Web應(yīng)用程序的支持時不可用。Yes
shutdown允許應(yīng)用以優(yōu)雅的方式關(guān)閉(默認(rèn)情況下不啟用)No
threaddump執(zhí)行一個線程dumpYes

如果使用web應(yīng)用(Spring MVC, Spring WebFlux, 或者 Jersey),你還可以使用以下端點:

ID描述默認(rèn)啟用
heapdum返回一個GZip壓縮的hprof堆dump文件Yes
jolokia通過HTTP暴露JMX beans(當(dāng)Jolokia在類路徑上時,WebFlux不可用)Yes
logfile返回日志文件內(nèi)容(如果設(shè)置了logging.file或logging.path屬性的話),支持使用HTTP Range頭接收日志文件內(nèi)容的部分信息Yes
prometheus以可以被Prometheus服務(wù)器抓取的格式顯示metrics信息Yes

要更改公開哪些端點,請使用以下技術(shù)特定的include和exclude屬性:

PropertyDefault
management.endpoints.jmx.exposure.exclude*
management.endpoints.jmx.exposure.include*
management.endpoints.web.exposure.exclude*
management.endpoints.web.exposure.includeinfo, health

include屬性列出了公開的端點的ID,

exclude屬性列出了不應(yīng)該公開的端點的ID

exclude屬性優(yōu)先于include屬性。包含和排除屬性都可以使用端點ID列表進(jìn)行配置。

*可以用來選擇所有端點。

例如,要通過HTTP公開除env和beans端點之外的所有內(nèi)容,請使用以下屬性:

management.endpoints.web.exposure.include=*
management.endpoints.web.exposure.exclude=env,beans

三、關(guān)閉鑒權(quán)

一般我們會將actuator和spring security鑒權(quán)組件結(jié)合使用,防止這些功能端口被隨便調(diào)用。由于這里是功能演示,先放開actuator相關(guān)端口的權(quán)限認(rèn)證。

SpringBoot動態(tài)修改日志級別的操作是什么

此外,如果存在Spring Security,則需要添加自定義安全配置,以允許對端點進(jìn)行未經(jīng)身份驗證的訪問,如以下示例所示:放開所有Endpoint端點進(jìn)行匹配

@Configuration
public class ActuatorSecurity extends WebSecurityConfigurerAdapter {
 
@Override
protected void configure(HttpSecurity http) throws Exception {
    http.requestMatcher(EndpointRequest.toAnyEndpoint()).authorizeRequests()
    .anyRequest().permitAll()
}

}

四 、通過/loggers端口查看日志級別

請求鏈接:http://localhost:8090/message/loggers

注意上面我說過的,我調(diào)整了management.endpoints.web.base-path=/message。如果沒有設(shè)置此參數(shù),則使用默認(rèn)的/actuator去訪問。

SpringBoot動態(tài)修改日志級別的操作是什么

五、發(fā)起http請求修改日志級別

這里演示,修改目錄com.wxswj.provider.message.controller的日志級別為debug

請求類型為POST,參數(shù)格式是JSON

curl -H "Content-Type: application/json" -X POST --data 
"
{
    "configuredLevel": "DEBUG"
}
" 
http://localhost:8090/message/loggers/com.wxswj.provider.message.controller

大家可以在服務(wù)器上通過curl發(fā)起http請求,或者通過Postman發(fā)起請求。

curl -H "Content-Type: application/json" -X POST --data "{"configuredLevel": "DEBUG"}" http://localhost:8090/loggers/com.wxswj.provider.message.controller

六、查詢?nèi)罩炯墑e修改結(jié)果

http://localhost:8090/message/loggers/com.wxswj.provider.message.controller

{
"configuredLevel": "DEBUG",
"effectiveLevel": "DEBUG"
}

說明我們的修改日志級別的請求生效。

關(guān)于“SpringBoot動態(tài)修改日志級別的操作是什么”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“SpringBoot動態(tài)修改日志級別的操作是什么”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前題目:SpringBoot動態(tài)修改日志級別的操作是什么-創(chuàng)新互聯(lián)
瀏覽路徑:http://fisionsoft.com.cn/article/icdeh.html