/autoconfig用來查看自動配置的使用情況,包括:哪些被應用、哪些未被應用以及它們未被應用的原因、哪些被排除。
/configprops可以顯示一個所有@ConfigurationProperties的整理列表。
/beans可以顯示Spring容器中管理的所有Bean的信息。
/dump用來查看應用所啟動的所有線程,每個線程的監控內容如下圖所示。
/env用來查看整個應用的配置信息,使用/env/[name]可以查看具體的配置項。
/health用來查看整個應用的健康狀態,包括磁盤空間使用情況、數據庫和緩存等的一些健康指標。
此外,Springboot還允許用戶自定義健康指標,只需要定義一個類實現HealthIndicator接口,並將其納入到Spring容器的管理之中。
/info可以顯示配置文件中所有以info.開頭或與Git相關的一些配置項的配置信息。
/mappings用來查看整個應用的URL地址映射信息。
/metrics用來查看一些監控的基本指標,也可以使用/metrics/[name]查看具體的指標。
/shutdown是一個POST請求,用來關閉應用,由於操作比較敏感,默認情況下該請求是被禁止的,若要開啟需在配置文件中添加以下配置:
endpoints.shutdown.enabled: true
/trace用來監控所有請求的追蹤信息,包括:請求時間、請求頭、響應頭、響應耗時等信息。
Actuator監控管理
打開或關閉
Actuator監控的所有項目都定義在spring-boot-actuator-x.x.x.RELEASE.jar的org.springframework.boot.actuate.endpoint包中,包含以下Endpoint。
這些Endpoint都繼承自AbstractEndpoint,AbstractEndpoint中定義了兩個重要的屬性:enabled和sensitive。
其中,enabled用來打開或關閉該監控項,語法為:endpoints.[endpoint_name].enabled=false/true,以關閉/autoconfig監控項為例,其配置如下。
endpoints.autoconfig.enabled=false
sensitive用來配置該監控項是否屬於敏感信息,訪問敏感信息需要用戶具有ACTUATOR角色權限,或者使用以下配置關閉安全限制。
management.security.enabled=false
端口與地址
除了使用與應用相同的端口訪問監控地址外,我們還可以在配置文件中增加 management.port 配置項來自己指定監控的請求端口。
management.port=9090
還可以通過 management.address 配置項來指定可以請求監控的IP地址,比如只能通過本機監控,可以設置 management.address = 127.0.0.1 。