Spring Boot Actuator只是提供了一个个的接口,需要我们自行集成到监控程序中。 Spring Boot Admin 用于监控基于 Spring Boot 的应用,它是在 Spring Boot Actuator 的基础上提供简洁的可视化 WEB UI 。提供如下功能:

  • 显示 name/id 和版本号
  • 显示在线状态
  • 下载主日志文件
  • 显示详情,如:
  • Java 系统属性
  • Java 环境变量属性
  • 内存信息
  • Spring 环境属性

spring boot URL参数 spring.boot.admin.url_服务端

添加依赖(server和client都需要添加)

<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-server</artifactId>
</dependency>
<!-- 一般客户端需要用到 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

配置server

  • 在启动类上添加注解 @EnableAdminServer,开启服务端监控
  • 在application.yml配置端口(同一个机器上,防止和client端口冲突)

配置client

  • application.yml配置端口,server,security等
server:
  port: 8080
spring:
  application:
  # Spring Boot Admin展示的客户端项目名,不设置,会使用自动生成的随机id
    name: spring-boot-hjy-admin-client
  boot:
    admin:
      client:
      # Spring Boot Admin 服务端地址
        url: "http://localhost:8000/"
        instance:
          metadata:
          # 客户端端点信息的安全认证信息
            user.name: ${spring.security.user.name}
            user.password: ${spring.security.user.password}
  security:
    user:
      name: hjy
      password: 123456
management:
  endpoint:
    health:
      # 端点健康情况,默认值"never",设置为"always"可以显示硬盘使用情况和线程情况
      show-details: always
  endpoints:
    web:
      exposure:
        # 设置端点暴露的哪些内容,默认["health","info"],设置"*"代表暴露所有可访问的端点
        include: "*"

启动步骤

  1. 先启动 server 服务端,
  2. 再启动 client 客户端,注册到服务端
  3. 访问服务端地址,观察客户端程序的运行状态等信息