Springboot下micrometer+prometheus+grafana进行JVM监控的操作过程
背景
同事今天提交了一个补丁.
给基于Springboot的产品增加了micrometer等收集jvm信息的工具
但是这边springboot的版本比较高,导致有异常.
启动直接失败了.
晚上九点多时进行了紧急回退.
但是十点的时候想了想是不是可以利用一下,进行grafana的监控.
发现还是比较简单的. 这里总结一下.
maven库获取相应的jar包
今天启动失败的报错提示为:
缺少类型:io.micrometer.prometheus.HistogramFlavor
同事反馈可能的原因是:
micrometer-registry-prometheus 的版本与springboot的版本不匹配
所以进行了一下简单处理.
maven库获取相应的jar包
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.4-Release-Notes
我们的版本是2.4.13 所以从上面的窗口搜索
micrometer 的兼容版本
查询到的结果是 1.6
然后手工上maven库上面进行查找:
https://mvnrepository.com/artifact/io.micrometer/micrometer-registry-prometheus/1.6.13
然后选择jar包进行下载就可以了
将三个jar包放到产品能够加载进内存的部分就可以,
文件为:
simpleclient_common-0.7.0.jar
simpleclient-0.7.0.jar
micrometer-registry-prometheus-1.6.13.jar
配置文件更改
第一步 添加白名单,保证可以无密码登录
# 注意这里存在一定的安全隐患
- /actuator/prometheus
第二步 添加actuator的部分设置便于prometheus进行抓取
management:
endpoints:
web:
exposure:
include: '*'
metrics:
export:
prometheus:
enabled: true
tags:
application: DM113
# 注意tag的意思在Grafana里面可以看到.
prometheus抓取micrometer的内容
prometheus加上一条配置信息就可以
- job_name: springboot
scrape_interval: 5s
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ["10.110.83.113:5200"]
Grafana 引入部分dashboard就可以了
# 注意一般文章只写了一个.
# 我简单搜了下主要有如下三个比较好用
4701 比较全面的.
11378 多了hikari 但是感觉数据不太对?
6083 监控连接池相关.