springboot为我们提供了丰富的指标监控功能SpringBoot Actuator
SpringBoot Actuator是springboot为简化我们对微服务项目的监控功能抽取出来的模块,使得我们每个微服务快速引用即可获得生产界别的应用监控、审计等功能
GitHub - codecentric/spring-boot-admin: Admin UI for administration of spring boot applications
1.创建smbmsActuator工程
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<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.3.1</version>
</dependency>
配置文件
# 应用名称
spring.application.name=smbmsActuator
# 应用服务 WEB 访问端口
server.port=9080
# Actuator Web 访问端口
management.server.port=9081
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
启动类加@EnableAdminServer
package com.test.smbmsactuator;
import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@EnableAdminServer
public class SmbmsActuatorApplication {
public static void main(String[] args) {
SpringApplication.run(SmbmsActuatorApplication.class, args);
}
}
访问路径监控路径
http://localhost:9080/
2.创建客服端工程smbms
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
增加配置
# 应用服务 WEB 访问端口
server.port=9080
# Actuator Web 访问端口
spring.boot.admin.client.url=http://localhost:9080
management.server.port=8081
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
启动类中不用加其他的注解,直接启动
package com.sanfeng.smbms;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SmbmsApplication {
public static void main(String[] args) {
SpringApplication.run(SmbmsApplication.class, args);
}
}