解决SpringBoot集成actuator和Prometheus访问报404
在搭建actuator+Prometheus监控时遇到的问题
解决Spring Boot集成actuator和Prometheus访问报404
前言
最近在尝试搭建 spring actuator + Prometheus
的接口健康监测系统,在测试 actuator 的时候遇到了一个问题,就是访问 localhost:8088/api/actuator/health
是正常的,但是访问 localhost:8088/api/actuator/prometheus
页面就会404
:
问题寻因
依赖
我先检查了依赖是否导入的正确
1 | <dependency> |
看起来没什么问题,这里需要导入两个依赖,一个是spring-boot-starter-actuator
还有就是micrometer-registry-prometheus
配置文件
application.yaml:
1 | #spring actuator配置 |
好像也没什么问题,这里为了方便把所有端口都暴露了,实际在生产环境中应该仔细选择要暴露的端口,不然会有安全问题
问题解决
那好像都没什么问题啊,后来通过一顿搜索,终于发现是依赖版本的原因
项目使用的 spring boot 版本是2.7.9
:
而 Spring Boot 2.7
对应的Micrometer
版本是1.9
:
这在Spring Boot 2.7 Release Notes · spring-projects/spring-boot Wiki可以查询
修改好后再访问localhost:8088/api/actuator/prometheus:
就可以看到正常输出了以 Prometheus 的标准形式输出的项目信息