Skip to content

在项目中集成 ActuatorSpring Boot Admin 可以帮助开发者监控和管理应用程序的运行状态。Actuator 提供了应用程序的健康检查、指标收集等功能,一个基于 Actuator 的可视化管理工具,提供了更友好的 UI 界面和更强大的管理功能。

简介

ActuatorSpring Boot 提供的一个模块,用于监控和管理应用程序。它提供了以下功能:

健康检查:检查应用程序的运行状态。
指标收集:收集应用程序的性能指标(如内存使用、CPU 使用等)。
环境信息:查看应用程序的配置信息。
日志管理:动态调整日志级别。

Spring Boot Admin 是一个基于 Actuator 的可视化管理工具,提供了以下功能:

应用程序监控:实时监控应用程序的运行状态。
日志管理:查看和动态调整日志级别。
通知功能:支持邮件、Slack 等通知方式。
历史数据:查看应用程序的历史运行数据。

添加依赖

pom.xml 中添加 ActuatorSpring Boot Admin 的依赖。

js
<!--监控-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<!--监控服务端-->
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-server</artifactId>
    <version>3.2.2</version>
</dependency>

<!--监控客户端-->
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-client</artifactId>
    <version>3.2.2</version>
</dependency>

配置文件

application-actuator.yml 中配置 Actuator,内容如下:

js
spring:
  application:
    name: xiaomayi-admin
  # Spring Boot Admin 配置项
  boot:
    admin:
      # 客户端开关
      enabled: true
      # Spring Boot Admin Server 服务端的相关配置
      context-path: admin # 配置 Spring
      # Spring Boot Admin Client 客户端的相关配置
      client:
        # 监控服务端口号
        port: 8080
        # 设置 Spring Boot Admin Server 地址
        url: http://127.0.0.1:${spring.boot.admin.client.port}/api/${spring.boot.admin.context-path}
        # 配置 admin-server的账号和密码
        username: admin
        password: 123456
        instance:
          service-host-type: IP # 注册实例时,优先使用 IP [IP, HOST_NAME, CANONICAL_HOST_NAME]
          # 注册到admin server的微服务名称
          name: 小蚂蚁云后端管理系统
          metadata:
            # 这里配置admin-client的账号和密码
            user.name: ${spring.security.user.name}
            user.password: ${spring.security.user.password}

  # 配置一个账号和密码
  security:
    user:
      name: admin
      password: 123456

# Actuator 监控端点的配置项
management:
  health:
    redis:
      enabled: false
    mail:
      enabled: false
  endpoints:
    web:
      base-path: /actuator # Actuator 提供的 API 接口的根目录。默认为 /actuator
      exposure:
        include: '*' # 需要开放的端点。默认值只打开 healthinfo 两个端点。通过设置 * ,可以开放所有端点。、
    # 是否开启默认端点,默认值true
    enabled-by-default: true
  endpoint:
    health:
      # 是否展示健康检查详情
      show-details: always
    info: # 端点名称
      # 是否开放,对单一端点的开启与关闭
      enabled: true
    logfile:
      external-file: ${user.dir}/logs/${spring.profiles.active}/xs-monitor/xs-monitor-server/sys-console.log
  security:
    enabled: false

常用 Actuator 端点:

/actuator/health:健康检查。
/actuator/info:应用程序信息。
/actuator/metrics:性能指标。
/actuator/env:环境信息。
/actuator/loggers:日志管理。

服务注解

在应用启动主类上添加 @EnableAdminServer 注解:

js
package com.xiaomayi.monitor;

import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@EnableAdminServer
@SpringBootApplication
public class MonitorApplication {
    public static void main(String[] args) {
        SpringApplication.run(MonitorApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  小蚂蚁云监控服务启动成功   ლ(´ڡ`ლ)゙");
    }
}

访问监控

  1. 启动 Spring Boot Admin Server 和被监控的应用程序。

健康检查

  1. 访问 Spring Boot AdminUI 界面:http://localhost:8080/api/admin

健康检查

  1. UI 界面中,可以看到被监控的应用程序列表,并查看其运行状态、日志、性能指标等信息。

健康检查

健康检查

健康检查

健康检查

健康检查

小蚂蚁云团队 · 提供技术支持

小蚂蚁云 新品首发
新品首发,限时特惠,抢购从速! 全场95折
赋能开发者,助理企业发展,提供全方位数据中台解决方案。
获取官方授权