Springboot下micrometer+prometheus+grafana进行JVM监控的操作过程

背景

复制代码
同事今天提交了一个补丁.
给基于Springboot的产品增加了micrometer等收集jvm信息的工具
但是这边springboot的版本比较高,导致有异常. 
启动直接失败了.
晚上九点多时进行了紧急回退. 
但是十点的时候想了想是不是可以利用一下,进行grafana的监控.
发现还是比较简单的. 这里总结一下. 

maven库获取相应的jar包

  • 先说明一下错误情况

    今天启动失败的报错提示为:
    缺少类型:io.micrometer.prometheus.HistogramFlavor
    同事反馈可能的原因是:
    micrometer-registry-prometheus 的版本与springboot的版本不匹配
    所以进行了一下简单处理.


maven库获取相应的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 监控连接池相关.
相关推荐
Hgfdsaqwr26 分钟前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
2301_763472461 小时前
使用PyQt5创建现代化的桌面应用程序
jvm·数据库·python
爱学习的阿磊1 小时前
Web开发与API
jvm·数据库·python
qq_192779871 小时前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
naruto_lnq1 小时前
NumPy入门:高性能科学计算的基础
jvm·数据库·python
2301_822365031 小时前
实战:用Python分析某电商销售数据
jvm·数据库·python
惊讶的猫1 小时前
多线程同步问题及解决
java·开发语言·jvm
2301_788756062 小时前
Python在2024年的主要趋势与发展方向
jvm·数据库·python
u0109272712 小时前
Python虚拟环境(venv)完全指南:隔离项目依赖
jvm·数据库·python
m0_686041612 小时前
Python类型提示(Type Hints)详解
jvm·数据库·python