什麼是 SpringBoot Admin? Spring Boot Admin 是一個管理和監控你的 Spring Boot 應用程式的應用程式。這些應用程式通過 Spring Boot Admin Client(通過 HTTP)註冊或者使用 Spring Cloud(例如 Eureka)發現。UI ...
什麼是 SpringBoot Admin?
Spring Boot Admin 是一個管理和監控你的 Spring Boot 應用程式的應用程式。這些應用程式通過 Spring Boot Admin Client(通過 HTTP)註冊或者使用 Spring Cloud(例如 Eureka)發現。UI只是 Spring Boot Actuator 端點上的一個 AngularJs 應用程式。
快速開始
首先在 IDEA 創建一個 SpringBoot 項目,把它當作 server 端,工程如下:
然後在 pom.xml 中引入依賴:
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server-ui</artifactId>
<version>1.5.6</version>
</dependency>複製代碼
繼續在啟動類 SpringbootAdminApplication.java 中引入註解 @EnableAdminServer,然後運行項目:
訪問 http://localhost:8084/ 即可:
此時會發現沒有任何應用程式的信息。
接下來我們新建一個 SpringBoot 項目,把它當作客戶端程式,工程如下:
在 pom.xml 中添加依賴:
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>1.5.6</version>
</dependency>複製代碼
然後在 application.yml 中設置:
spring.boot.admin.url=http:localhost:8094 用於將當前應用註冊到 Spring Boot Admin。
還可以設置,spring.boot.admin.client.name: (應用程式的名字)不設置的話會有預設的名字
此時把兩個項目運行起來:
點擊圖中的 detail 按鈕:可以看到應用程式的健康值、記憶體、JVM、GC 等信息。
metrics 信息:
環境 信息:
log 信息:
JMX 信息:
線程 信息:
Trace 追蹤信息:
還可以下載 Heapdump 文件。
剛纔首頁的應用列表後面有個紅色的 ×,我們可以將註冊上去的應用移除,但是只要你不把程式停掉,它立馬又會註冊上去。
還有就是應用列表的 version 和 info 上面的圖中為空,下麵看看怎麼把它變出來:
info.groupId: @[email protected]: @[email protected]: @project.version@複製代碼
重新運行客戶端程式,刷新頁面可以發現:
還可以查詢應用程式的事件變化:
客戶端應用程式
JMX bean管理
要在管理界面中與JMX-beans進行交互,您必須在客戶端應用程式中包含 Jolokia,
pom.xml 加入依賴:
<dependency>
<groupId>org.jolokia</groupId>
<artifactId>jolokia-core</artifactId>
</dependency>
複製代碼
重啟客戶端程式後,就可以在這裡與 JMX 做交互了:
還有很多 SpringBoot Admin 客戶端配置選項:
http://codecentric.github.io/spring-boot-admin/1.5.6/#spring-boot-admin-client
服務端程式
也有些 SpringBoot Admin 服務端程式配置選項:
http://codecentric.github.io/spring-boot-admin/1.5.6/#spring-boot-admin-server
官方文檔裡面還有些關於服務下線消息通知的知識,想瞭解的可以查看:
http://codecentric.github.io/spring-boot-admin/1.5.6/#_notifications
參考文章
http://codecentric.github.io/spring-boot-admin/1.5.6/
推薦閱讀:
為什麼選擇 Spring 作為 Java 框架?
SpringBoot RocketMQ 整合使用和監控
上篇好文:
右上角按鈕分享給更多人哦~
作者:SpringForAll社區
鏈接:https://juejin.im/post/5d3f22d55188255d2c7a5973
來源:掘金
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。