当前位置 - 養生大全網 - 健康養生 - 彈簧靴2.0致動器的健康檢查

彈簧靴2.0致動器的健康檢查

在流行的服務網格體系結構中,Spring boot由於其各種優勢而特別適合作為應用程序開發框架。

說到服務網格的微服務架構,主要特點是將服務開發與服務治理分離,然後將它們與容器化的Paas平臺相結合,這有賴於它們之間的默契配合。也就是說,它們都公開了標準接口,可以相互交織。

服務網格的架構設計的壹個重點是全方位監控,所以壹般我們選擇的服務開發框架都需要有便捷強大的監控功能支持。在Spring boot應用中啟動監控特別方便,監控面也很廣,還支持靈活定制。

在彈簧靴的應用中,依靠彈簧靴-起動器-致動器組件來實現可監控功能。它提供了許多HTTP或JMX端點來監控和管理您的spring boot應用程序,您可以有選擇地打開和關閉壹些功能。當您的spring boot應用程序引入以下依賴項時,它將自動具有審計、健康檢查和指標監控功能。

具體使用方法:

“*”表示所有監控端點都已啟用,可以單獨啟用,例如健康、信息、指標等。

壹般監控和管理端點的配置信息如下:

以上配置信息僅供參考。詳情請參考官方文件。由於spring boot的版本更新很快,配置方法可能會發生變化。

今天,我將重點介紹執行器監控和管理中的健康檢查功能。隨時了解在線應用的健康狀態非常重要,尤其是流行的容器雲平臺下的應用。它們的自動恢復和擴展依賴於健康檢查功能。

當我們打開health的health端點時,可以發現應用程序健康信息是壹個摘要信息。當我們訪問http://127 . 0 . 0 . 1:101/actuator/health時,得到以下信息。

要查看詳細的應用程序健康信息,您需要配置管理的值。endpoint . health . show-細節壹如既往。配置完成後,我們將再次訪問http://127 . 0 . 0 . 1:1011/actuate。

從上面應用程序的詳細健康信息中,發現健康信息包括磁盤空間、redis和DB。啟用了監控的spring boot應用確實是連接了redis和oracle DB,執行器自動監控,確實方便有用。

經過測試,發現details中所有監控項的任何健康狀態都是DOWN,整個應用程序的健康狀態也是DOWN。

Spring boot的健康信息是從ApplicationContext中的各種HealthIndicator獲得的。

收集在Beans中,Spring boot框架包含了大量HealthIndicators的實現類,當然妳也可以實現自己的健康狀態。

默認情況下,最終spring boot應用程序的狀態由HealthAggregator匯總,匯總的算法是:

Spring boot框架中包含的健康指標目前包括:

有時有必要提供自定義健康檢查信息。可以通過實現HealthIndicator的接口並將實現類註冊為spring bean來實現這壹點。您需要實現health()方法並返回定制的健康狀態響應信息,該信息應該包括要顯示的狀態代碼和詳細信息。例如,下面是接口HealthIndicator的實現類:

此外,除了Spring boot定義的幾種狀態類型,我們還可以定制狀態類型來表示新的系統狀態。在這種情況下,您還需要實現接口HealthAggregator,或者通過配置management.health.status.order繼續使用HealthAggregator的默認實現

例如,在自定義運行狀況檢查HealthIndicator的實現類中,使用自定義狀態類型“致命”。為了配置此狀態類型的嚴重性,您需要在應用程序的配置文件中添加以下配置:

在進行健康檢查時,響應中的HTTP狀態代碼反映了整體的健康狀態(例如,UP對應於200,OUT_OF_SERVICE和DOWN對應於503)。同樣,您需要為用戶定義的狀態類型設置相應的HTTP狀態代碼。例如,以下配置可以將致命映射到503(服務不可用):

以下是與內置健康狀態類型相對應的HTTP狀態代碼列表:

主要介紹了Spring boot中提供的應用健康檢查功能的使用方法和原理,並介紹了Actuator的壹點內容。主要內容來自spring boot 2.0.1的官方文檔和源代碼,以及自己的壹些想法。希望大家多多支持。