久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

SpringBoot actuator 健康檢查不通過的解決方案

瀏覽:39日期:2023-02-23 15:46:31
SpringBoot actuator 健康檢查不通過

今天遇到有個服務能夠注冊成功,但是健康檢查不通過,通過瀏覽器訪問健康檢查的url,chrome的network一直顯示pending,說明這個請求提交了,但是得不到返回,卡住了。

原來以為健康檢查就是檢查服務端口下的/health這個請求本身是否能正常返回,其實不是。

所謂健康檢查是有很多檢查項的,springboot中繼承AbstractHealthIndicator的類,比如DataSourceHealthIndicator RedisHealthIndicator 等,springboot會自動配置,比如使用了mysql的datasouce,健康檢查的時候就會執行DataSourceHealthIndicator 的doHealthCheck(),使用了redis,就會執行RedisHealthIndicator 的doHealthCheck()。

解決方式:

首先可以確定是否是這些外部數據源連接不了導致健康檢查不通過,可以配置

management: health: db: enabled: false redis: enabled: false elasticsearch: enabled: false

把系統中用到的都關閉健康檢查,看健康檢查是否能正常通過,如果能通過再一個個打開逐個排除問題

最終發現上面的pending情況就是由于mysql的url配置不對,比如端口錯誤,或者mysql用戶的權限不夠,DataSourceHealthIndicator 的doHealthCheck()會去連接mysql連接不成功,就卡在連接mysql那里了。

配置正確的url,開啟權限,解決問題。

Spring Boot健康檢查相關配置和整理1.什么是Spring Boot的健康檢查,有什么用?

Spring Boot提供了多項組件的健康檢查,有利于監控各組件運行狀況,但是有時開發者因此會啟動不成功,報錯等,需要合理配置。

2.Spring Boot項目中都有哪些檢查,如何配置相關檢查:

2.1首先健康檢查引入的包是

<dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-actuator</artifactid></dependency>

2.2相關健康檢查相關Indicator

CassandraHealthIndicator 檢查Cassandra是否可用 DiskSpaceHealthIndicator 檢查磁盤空間是否不足 DataSourceHealthIndicator 檢查能否從DataSource獲取鏈接 ElasticsearchHealthIndicator 檢查Elasticsearch cluste是否可用 JmsHealthIndicator 檢查JMS broker是否可用 MailHealthIndicator 檢查mail server是否可用 MongoHealthIndicator 檢查Mongo database是否可用 RabbitHealthIndicator 檢查Rabbit server是否可用 RedisHealthIndicator 檢查Redis server是否可用 SolrHealthIndicator 檢查Solr server是否可用

可以看到,有各項外部服務的檢查,具體的請瀏覽官方文檔,這里不再贅余

2.3如何關閉/開啟健康檢查

application.properties里顯式設定

//如禁止es的健康檢查如下,默認均為開啟狀態management.health.elasticsearch.enabled=false

也可以使用*全部禁止

management.health.*.enabled=false

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 久治县| 敦化市| 永川市| 枣庄市| 蕉岭县| 那曲县| 洞头县| 镇宁| 平潭县| 潍坊市| 永平县| 崇左市| 博乐市| 汾阳市| 延庆县| 漠河县| 陕西省| 泾川县| 汤原县| 慈溪市| 西藏| 丰顺县| 沿河| 长白| 都安| 云浮市| 台东市| 连江县| 陈巴尔虎旗| 台安县| 临邑县| 疏附县| 德保县| 绿春县| 平泉县| 巩留县| 晋州市| 延川县| 东兴市| 宽城| 当阳市|