1. 简介

参考:https://mp.weixin.qq.com/s/L4N46_pn6aQiHSApj1HZoA

Spring Boot Admin(SBA)是一个开源的社区项目,用于管理和监控 Spring Boot 应用程序。应用程序可以通过 http 的方式,或 Spring Cloud 服务发现机制注册到 SBA 中,然后就可以实现对 Spring Boot 项目的可视化管理和查看了。

Spring Boot Admin 可以监控 Spring Boot 单机或集群项目,它提供详细的健康 (Health)信息、内存信息、JVM 系统和环境属性、垃圾回收信息、日志设置和查看、定时任务查看、Spring Boot 缓存查看和管理等功能。

具体如图:
image.png

2. 快速上手

2.1 引入依赖

1、新建 SpringBoot 项目,名称为 sba-server。
2、引入相关依赖。

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. <version>2.2.10.RELEASE</version>
  5. </dependency>
  6. <!-- 尽量和springboot版本匹配 -->
  7. <dependency>
  8. <groupId>de.codecentric</groupId>
  9. <artifactId>spring-boot-admin-starter-server</artifactId>
  10. <version>2.2.4</version>
  11. </dependency>

2.2 开启SBA服务

1、启动类上添加注解 @EnableAdminServer

  1. @EnableAdminServer // 添加此行代码
  2. @SpringBootApplication
  3. public class SBAApplication {
  4. public static void main(String[] args) {
  5. SpringApplication.run(SBAApplication.class, args);
  6. }
  7. }

2、修改 SBA 端口号。

  1. # 配置SBA端口号
  2. server:
  3. port: 9001

2.3 其他服务配置

1、在想要监控的服务中引入依赖。

  1. <dependency>
  2. <groupId>de.codecentric</groupId>
  3. <artifactId>spring-boot-admin-starter-client</artifactId>
  4. <version>2.2.4</version>
  5. </dependency>

2、在配置文件中指定 sba 的地址。

  1. spring:
  2. application:
  3. name: client-authcode
  4. boot:
  5. admin:
  6. client:
  7. url:
  8. - http://localhost:9001

3、启动服务后就可以从 http://localhost:9001 监控我们的服务了。

3. 监控扩展

1、在被监控的 SpringBoot 项目中引入 actuator 依赖。

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-actuator</artifactId>
  4. </dependency>

2、开启下列配置。

  1. # 开启监控所有项
  2. management:
  3. endpoint:
  4. health:
  5. enabled: true
  6. endpoints:
  7. web:
  8. exposure:
  9. include: '*'

3、重启项目,查看结果。
image.png

4. 项目实时日志

想要查看监控项目中的日志信息,有一个前提条件,前提条件是你被监控的 Spring Boot 项目,必须配置了日志的保存路径或者日志保存文件名,只有配置这两项中的任意一项,你的 Spring Boot 项目才会将日志保存到磁盘上,这样才能通过 SBA 查看到,我配置的是日志路径,在 Spring Boot 的 application.properties 配置文件中添加以下配置:

  1. # 设置日志保存路径
  2. logging:
  3. file:
  4. path: D:\\log

设置完成之后,重启你的 Spring Boot 项目,然后刷新 SBA 页面,最终展示效果如下:
image.png