spring-boot-admin可以对微服务的状态进行监控,步骤如下:
1、添加spring-boot-admin和nacos依赖
<!-- nacos注册中心 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- spring-boot-admin -->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>
2、监控应用启动类注解@EnableAdminServer
package com.gingko.blogactuator;
import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@EnableAdminServer
public class BlogActuatorApplication {
public static void main(String[] args) {
SpringApplication.run(BlogActuatorApplication.class, args);
}
}
3、配置应用信息(服务注册到nacos中)
server:
port: 8090
spring:
application:
name: blog-actuator
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
namespace: ef79f370-74df-428b-8d2a-19c17e966ad1
4、启动其他微服务及开启actuator
以blog-user服务为例,此服务添加了actuator的支持
5、启动blog-actuator服务并页面测试服务监控情况
微服务监控工具很多,jdk自带的jconsole和jvisualvm也可以监控微服务的状态,如监控内存、cpu、线程等信息,示例如下:
在idea服务启动时,加如下参数(8066是jconsole和jvisualvm连接的端口):
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8066
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false