用SpringBoot Admin監控SpringBoot程式
專案原始碼地址:https://github.com/laolunsi/spring-boot-examples/tree/master/02-spring-boot-admin-demo
一、SpringBoot Admin概要
SpringBoot Admin用於監控SpringBoot程式,一個SpringBoot程式通過向SpringBoot Admin Server註冊或使用@DiscoveryClient等微服務方式,可以將自身註冊到SpringBoot Admin Server。
SpringBoot Admin UI是一個基於SpringBoot Actuator endpoints上的Vue.js應用。
我們可以先預覽一下效果圖:
下面我們來基於SpringBoot建立監控程式和示例:
二、第一個Spring Boot Admin Server與Client
2.1 建立Admin Server
採用SpringBoot 2.1.8.RELEAE和SpringBoot Admin 2.1.5
<properties> <java.version>1.8</java.version> <spring-boot-admin.version>2.1.5</spring-boot-admin.version> </properties> <dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-dependencies</artifactId> <version>${spring-boot-admin.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
application類啟用AdminServer:
@SpringBootApplication @EnableAdminServer public class AdminServerApplication { public static void main(String[] args) { SpringApplication.run(AdminServerApplication.class,args); } }
配置:
server: port: 9333 spring: application: name: admin-server boot: admin: client: enabled: true url: http://localhost:${server.port} # 將自身註冊到admin-server
2.2 建立SpringBoot應用並註冊到Admin Server
SpringBoot應用註冊到Admin Server有兩種方式:
- 引入admin-client依賴,啟用admin client並配置admin-server的地址即可
- 微服務環境,使用@EnableDiscoveryClient或其他類似註解
這裡演示第一種方法:
依賴:
SpringBoot 2.1.8.RELEASE和SpringBoot Admin 2.1.5
<properties> <java.version>1.8</java.version> <spring-boot-admin.version>2.1.5</spring-boot-admin.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-dependencies</artifactId> <version>${spring-boot-admin.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
配置:
server: port: 9334 spring: application: name: client-demo boot: admin: client: enabled: true url: http://localhost:9333 # 這裡加一個暴露所有應用資訊的配置 management: endpoints: web: exposure: include: '*'
這個應用不需要修改Application類,預設的就行。
2.3 啟動和測試SpringBoot Admin
啟動這兩個應用,開啟瀏覽器,輸入admin-server的地址:http://localhost:9333
預設會進入上面的application頁面,我們可以看到admin-server和client-demo兩個SpringBoot已經註冊到admin-server的監控中了。
開啟wallboard頁面:
點開journal,可以看到這些應用的記錄:
點開application中client-demo應用,可以看到這個應用的面板:
在這裡我們可以看到當前伺服器、當前應用的詳細資訊。
到此為止,我們介紹瞭如何利用SpringBoot Admin來管理SpringBoot應用,下一篇我們將繼續瞭解,如何在SpringCloud的微服務體系中,利用SpringBoot Admin來監控微服務。
以上就是用SpringBoot Admin監控SpringBoot程式的詳細內容,更多關於SpringBoot Admin監控的資料請關注我們其它相關文章!