Actuator(健康检查与运维端点)
作用
Spring Boot Actuator 用于暴露运行状态与运维信息(如 health、info、metrics、logfile 等),常见用途:
- 给 Spring Boot Admin(监控 UI)采集实例健康与指标数据
- 服务器探活(K8s / LB health check)
- 排障:查看环境、线程、日志等
Actuator 默认路径是
/actuator(可通过management.endpoints.web.base-path修改;本项目默认未改)。
本项目中的位置与配置
1) mms-admin(管理端 / 8080)
在 mms-admin/src/main/resources/application-*.yml 中已按环境配置暴露端点范围:
- dev:
management.endpoints.web.exposure.include: '*'(全开,便于联调) - prod:
include: health,info(生产默认收敛暴露范围) management.endpoint.health.show-details: ALWAYSmanagement.endpoint.logfile.external-file: ./logs/sys-console.log
并且在主配置 application.yml 的 Sa-Token 放行列表中包含:
/actuator/actuator/**
即默认不需要登录 token 即可访问(建议仅在内网或经网关鉴权后对外开放)。
2) mms-monitor(Spring Boot Admin 服务端 / 9001)
监控服务端本身也启用了 Actuator(见 mms-zoom/mms-monitor/src/main/resources/application.yml):
management.endpoints.web.exposure.include: '*'management.endpoint.logfile.external-file: ./logs/monitor-console.log
3) mms-powerjob(PowerJob 调度中心 / 7700)
调度中心同样启用了 Actuator(见 mms-zoom/mms-powerjob/src/main/resources/application.yml):
management.endpoints.web.exposure.include: '*'management.endpoint.logfile.external-file: ./logs/powerjob-console.log
快速验证
以 mms-admin 为例:
bash
curl http://localhost:8080/actuator/health
curl http://localhost:8080/actuator/info若你开启了 logfile 端点(dev 默认 *),可验证:
bash
curl http://localhost:8080/actuator/logfile常见注意事项
- 生产环境建议收敛暴露范围:优先只开放
health,info,其余端点走网关/鉴权后按需放开。 - Spring Boot Admin 依赖 Actuator 暴露:监控页能看到哪些菜单,取决于客户端暴露了哪些端点(
include列表)。
