Actuator 监控--健康检测
文章目录前言 实施计划Step 1️⃣添加依赖pom.xmlStep 2️⃣配置 application.yml 启用监控端点Step 3️⃣创建 TokenHealthIndicator 自定义健康检查Step 4️⃣编译验证怎么访问功能说明操作 Actuator 监控有什么用1️⃣ **实时监控应用状态**2️⃣ **自定义健康检查最重要**3️⃣ **为什么需要**举个例子其他端点前言实现 Actuator 监控 实施计划#优化项说明1️⃣添加依赖spring-boot-starter-actuator2️⃣配置端点在 application.yml 启用监控端点3️⃣自定义健康检查检查 access_token 是否正常Step 1️⃣添加依赖pom.xmlStep 2️⃣配置 application.yml 启用监控端点Step 3️⃣创建 TokenHealthIndicator 自定义健康检查packagecom.example.wxpush.service;importorg.springframework.boot.actuate.health.Health;importorg.springframework.boot.actuate.health.HealthIndicator;importorg.springframework.stereotype.Component;ComponentpublicclassTokenHealthIndicatorimplementsHealthIndicator{privatefinalAccessTokenServiceaccessTokenService;publicTokenHealthIndicator(AccessTokenServiceaccessTokenService){this.accessTokenServiceaccessTokenService;}OverridepublicHealthhealth(){try{StringtokenaccessTokenService.getAccessToken();if(token!null!token.isEmpty()){returnHealth.up().withDetail(status,access_token 有效).withDetail(token,token.substring(0,Math.min(20,token.length()))...).build();}else{returnHealth.down().withDetail(status,access_token 获取失败).build();}}catch(Exceptione){returnHealth.down().withDetail(error,e.getMessage()).build();}}}Step 4️⃣编译验证怎么访问启动应用后访问监控端点 1️⃣ 健康检查http://localhost:8081/actuator/health 2️⃣ 应用信息http://localhost:8081/actuator/info 3️⃣ 系统指标http://localhost:8081/actuator/metrics功能说明端点说明/actuator/health包含自定义的 access_token 健康检查tokenHealth/actuator/info显示应用信息版本、描述等/actuator/metrics系统指标JVM、内存、CPU 等操作# 启动应用mvn spring-boot:run# 查看健康检查会显示{status:UP,components:{diskSpace:{status:UP,...},token:{status:UP,...},ping:{status:UP}} Actuator 监控有什么用1️⃣实时监控应用状态你刚才打开的/actuator/health 会显示-UP正常-DOWN挂了-UNKNOWN未知 这样你不用看代码一眼就知道应用是不是正常2️⃣自定义健康检查最重要我们写的TokenHealthIndicator会检查 ✅ access_token 是不是正常获取了 ✅ 微信接口是不是通的 如果微信接口挂了token 获取失败 → 健康检查直接DOWN3️⃣为什么需要场景说明开发调试改完代码后访问 /health 就知道跑通了没线上运维公司有监控平台Prometheus/Grafana会定期访问这个接口如果 DOWN 了就报警自动重启K8s/Docker 可以通过健康检查判断容器是否要重启举个例子假设晚上1.微信接口临时挂了2.access_token 获取失败3./actuator/health 显示DOWN4.监控系统报警5.你手机收到短信6.你立刻起来看或者自动重启其他端点/actuator/metrics→ 看 JVM 内存、CPU 用了多少/actuator/info→ 显示应用版本、描述可以在 pom 或配置里加