踩坑及解决以下问题
1、客户端监控信息不显示,需要暴露监控检查接口路径
2、服务端不显示客户端日志,需要启用日志,并指定日志路径
3、解决在k8s下,客户端多实例注册id相同,如2个实例只显示一个
整体架构
springboot-admin 由服务端和客户端组成
服务端负责
1、提供 Web 管理界面,展示应用的运行状态、日志、性能指标等
2、通过 HTTP 接口调用客户端actuator健康检查接口,获取监控数据
3、服务上线、下线、异常预警(可拓展各种方式:如邮件、短信、钉钉等)
客户端负责
1、启动应用向服务端注册客户端信息
2、定时向服务端发送心跳请求,上报应用状态
2、暴露Actuator接口,供服务端获取内存、线程、日志等数据
整体效果
部署实操
服务端部署
此处版本
springboot 2.5.14
spring-boot-admin-starter-server 2.6.5
添加依赖
此处添加spring-boot-starter-security,访问需要登录
<!-- SpringBoot Admin -->
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>
<!-- SpringBoot Web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- jetty 长链接场景,节省资源-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<!-- Spring Security -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId