Spring Boot Admin快速打造監(jiān)控平臺
使用過Spring boot的開發(fā)者都知道actuator,它是Springboot提供的用來對應用系統(tǒng)進行自省和監(jiān)控的功能模塊,借助于Actuator開發(fā)者可以很方便地對應用系統(tǒng)某些監(jiān)控指標進行查看、統(tǒng)計等。但比較遺憾的是沒有可視化界面,只能通過干燥的json數(shù)據(jù)來查看相應的指標,如下圖:
今天我們介紹一個可視化的監(jiān)控指標平臺Spring Boot Admin,它利用spring-boot-starter-actuator提供的功能,將各個微服務的狀態(tài)整合到一起,并提供良好的界面查看支持,并且能夠動態(tài)的修改實例日志級別。
Spring Boot Admin 開源地址:https://github.com/codecentric/spring-boot-admin
Spring Boot Admin分為server和client,使用非常方便,server端可查看各個微服務的狀態(tài),client端將微服務注冊到server端。
服務端
下面先搭建server端,直接使用start.spring.io生成一個spring boot項目,引入下面依賴

配置端口和服務名
- server.port=8090
- spring.application.name=admin-server
啟動類,通過添加注解@EnableAdminServer

啟動后,打開url顯示如下

客戶端
spring boot項目,直接添加下圖依賴即可
application.properties中配置注冊的服務端地址如下
- spring.application.name=admin-client
- spring.boot.admin.client.url=http://127.0.0.1:8090
- management.endpoints.web.exposure.include=*
- management.endpoint.health.show-details=ALWAYS
啟動完成后,查看server端,如下圖
查看相關(guān)指標
應用墻可以快速看到那些服務異常
正常情況
異常情況

點擊應用,可以查看相應指標


查看properties的環(huán)境變量配置

查看日志級別
Spring Boot Admin為注冊的應用程序提供以下功能:
- 顯示健康狀況
- 顯示詳細信息,例如JVM和內(nèi)存指標micrometer.io指標數(shù)據(jù)源指標緩存指標
- 顯示內(nèi)部編號
- 關(guān)注并下載日志文件
- 查看JVM系統(tǒng)和環(huán)境屬性
- 查看Spring Boot配置屬性
- 支持Spring Cloud的可發(fā)布/ env-&/ refresh-endpoint
- 輕松的日志級別管理
- 與JMX-beans交互
- 查看線程轉(zhuǎn)儲
- 查看http-traces
- 查看審核事件
- 查看http端點
- 查看預定的任務
- 查看和刪除活動會話(使用spring-session)
- 查看Flyway / Liquibase數(shù)據(jù)庫遷移
- 下載heapdump
- 狀態(tài)更改通知(通過電子郵件,Slack,Hipchat等)
- 狀態(tài)更改的事件日志(非持久性)