詳解SpringBoot2.X應用程序監控Actuator的配置與使用

前言

咱們都知道springboot包含了不少實用性的功能starter組件,本文主要介紹的這個組件是actuator。actuator主要是對springboot應用程序進行監控和管理,簡單的說就是經過restful api接口請求來進行監管、審計、健康和數據採集你的應用程序運行的狀況,經過本文將帶你詳細瞭解actuator。java

actuator的使用

咱們如何去使用actuator這個功能呢,很簡單,咱們只須要在pom.xml文件中引入依賴,以下:面試

引入完事後,啓動項目,並訪問http://localhost:8081/actuator,訪問結果以下:spring

本文來源於公衆號:【Java學習提高】 專一於Java領域技術分享,Java知識體系學習、分享面試經驗,讓咱們結伴而行,共同成長!api

經過結果咱們能夠看到只顯示了/health和/info這兩個端點,這是由於爲了程序的安全性考慮,默認只開啓了這兩個端口,若是咱們想顯示全部的端口,咱們只需下面的配置便可:安全

配置開放全部的端點springboot

若是咱們想開放指定的端口,配置以下:restful

配置開放指定的端點學習

由上圖可知,咱們能夠經過這些端點能獲取應用程序在運行過程當中的一些監控信息,固然也能夠經過端點來改變系統的狀態,下面表格列舉了經常使用的端點名稱及說明:spa

經常使用的端點名稱及描述3d

端點的安全性

對於正在生產環境上運行的程序來講端點是比較敏感的,咱們並不但願別人惡意的去訪問端點,特別是

/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組件來幫助咱們獲取在生產環境上運行的應用程序的一些監控指標,該組件是用於生產環境上面的組件,你們千萬別小看它。

原創聲明:本文爲【Java學習提高】原創博文,轉載請註明出處。

本文來源於公衆號:【Java學習提高】 專一於Java領域技術分享,Java知識體系學習、分享面試經驗,讓咱們結伴而行,共同成

相關文章
相關標籤/搜索