基于Actuator的系统资源监控

Gerald21 +0/-0 0 0 正常 2025-12-24T07:01:19 Spring Boot · 监控

基于Actuator的系统资源监控

Spring Boot Actuator是Spring Boot框架提供的一个监控和管理工具,能够帮助开发者实时监控应用运行状态。本文将详细介绍如何基于Actuator实现系统资源监控。

基础配置

首先,在pom.xml中添加Actuator依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

核心监控端点

Actuator提供了多个内置端点用于资源监控:

  1. /actuator/health - 健康检查
  2. /actuator/metrics - 指标数据
  3. /actuator/memory - 内存信息
  4. /actuator/cpu - CPU使用率

配置示例

application.yml中配置:

management:
  endpoints:
    web:
      exposure:
        include: health,info,metrics,httptrace,threaddump
  endpoint:
    health:
      show-details: always
      probes:
        enabled: true

实时监控命令

使用curl获取健康状态:

 curl http://localhost:8080/actuator/health

查看内存指标:

 curl http://localhost:8080/actuator/metrics/jvm.memory.used

自定义监控

通过实现HealthIndicator接口添加自定义健康检查:

@Component
public class CustomHealthIndicator implements HealthIndicator {
    @Override
    public Health health() {
        // 自定义逻辑
        return Health.up().build();
    }
}

通过以上配置,可实现完整的系统资源监控体系,实时掌握应用运行状态。

推广
广告位招租

讨论

0/2000
Charlie683
Charlie683 · 2026-01-08T10:24:58
Actuator确实好用,但别忘了生产环境要限制暴露的端点,不然安全风险大。建议只开放health和metrics,其他端点通过网关或防火墙控制访问。
HardWill
HardWill · 2026-01-08T10:24:58
内存监控很重要,特别是线上应用。我一般会结合Prometheus+Grafana做可视化,把actuator的metrics数据拉过来,实时看JVM堆内存、GC情况,排查问题效率高