前言
我們都知道springboot包含了很多實用性的功能starter組件,本文主要介紹的這個組件是actuator。actuator主要是對springboot應用程序進行監控和管理,簡單的說就是通過restful api接口請求來進行監管、審計、健康和數據采集你的應用程序運行的情況,通過本文將帶你詳細了解actuator。
actuator的使用
我們如何去使用actuator這個功能呢,很簡單,我們只需要在pom.xml文件中引入依賴,如下:
引入完過后,啟動項目,並訪問http://localhost:8081/actuator,訪問結果如下:
本文來源於公眾號:【Java學習提升】 專注於Java領域技術分享,Java知識體系學習、分享面試經驗,讓我們結伴而行,共同成長!
通過結果我們可以看到只顯示了/health和/info這兩個端點,這是因為為了程序的安全性考慮,默認只開啟了這兩個端口,如果我們想顯示所有的端口,我們只需下面的配置即可:
配置開放所有的端點
如果我們想開放指定的端口,配置如下:
配置開放指定的端點
由上圖可知,我們可以通過這些端點能獲取應用程序在運行過程中的一些監控信息,當然也可以通過端點來改變系統的狀態,下面表格列舉了常用的端點名稱及說明:
常用的端點名稱及描述
端點的安全性
對於正在生產環境上運行的程序來說端點是比較敏感的,我們並不希望別人惡意的去訪問端點,特別是
/shutdown這樣的端點。如果是開啟的話我們可以通過management.endpoint.shutdown.enabled = false來關閉此端點,這樣我們就保證了EndpointRequest.toAnyEndpoint()的安全性。
自定義端口
springboot從2.X開始,actuator就已經指出CRUD模型,我們可以通過下面的策略來自定義:
自定義策略
通過在某個端點類上面添加上面任意一個注解來表妹這是一個端點類。在類的方法上我們使用注解@ReadOperation、@WriteOperation或者@DeleteOperation(要保證端點的id是唯一的),這樣做會分別映射到Http中的 GET、POST以及DELET(對http來說)。下面我們來舉例說明自定義端點,代碼如下:
如何自定義健康檢查指標
pom.xml文件配置如下:
java代碼如下:
然后我們啟動程序,訪問http://localhost:8081/actuator/health,結果如下兩個狀態:
自定義健康檢查正常
自定義健康檢查失敗
總結
通過本文我們可以發現通過actuator組件來幫助我們獲取在生產環境上運行的應用程序的一些監控指標,該組件是用於生產環境上面的組件,大家千萬別小看它。
————————————————
版權聲明:本文為CSDN博主「Java學習提升」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/davidiao/article/details/106516524