Spring Boot 極大的簡化了我們的開發,他也提供了對於Spring Boot 應用的監控 ,Spring Boot Actuator可以幫助你監控和管理Spring Boot應用,比如健康檢查、審計、統計和HTTP追蹤等。所有的這些特性可以通過JMX或者HTTP endpoints來獲得,但是它反饋給我們的信息是這樣的
{
"status":"UP",
"details":{
"db":{
"status":"UP",
"details":{
"database":"MySQL",
"hello":1
}
},
"diskSpace":{
"status":"UP",
"details":{
"total":250790436864,
"free":100330897408,
"threshold":10485760
}
}
}
}
等等… 這樣我們從直觀上感覺不是太好理解,下面這個將是幫助我們去觀察的圖形化界面: Spring Boot Admin
Spring Boot Admin 用於監控基於 Spring Boot 的應用,它是在 Spring Boot Actuator 的基礎上提供簡潔的可視化 WEB UI。
Spring Boot Admin 提供了很多功能,如顯示 name、id 和 version,顯示在線狀態,Loggers 的日誌級別管理,Threads 線程管理,Environment 管理等。
Spring Boot admin 是有客戶端和服務端組成的
先看看服務端:
pom:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.1.0</version>
</dependency>
</dependencies>
啓動類:
@SpringBootApplication
@EnableAdminServer
public class AdminApplication {
public static void main(String[] args) {
SpringApplication.run(AdminApplication.class, args);
}
}
配置文件:
server.port=8000
這時啓動項目,請求localhost:8000 就會看到
然後在看看客戶端:
pom:
<!--spring Boot admin-->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.0.0</version>
</dependency>
配置文件:
spring
boot:
admin:
client:
url: "http://localhost:8000"
management:
endpoints:
web:
exposure:
include: "*"
啓動被監控的應用:(客戶端)
這樣就可以了,
注: 如果你的應用程序中有Redis 的話,請啓動它,不然會顯示異常