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 监控连接池相关.
相关推荐
她说..8 小时前
Java 默认值设置方式
java·开发语言·后端·springboot
折哥的程序人生 · 物流技术专研8 小时前
Java面试通关⑯:JVM虚拟机核心全集
jvm·校招·虚拟机·gc垃圾回收·java面试·类加载·调优
ALex_zry11 小时前
C++26 constexpr 异常详解:编译期也能 throw/catch
java·jvm·c++
标致的自行车13 小时前
Entity Framework之问题收集
jvm·数据库·oracle
ALex_zry16 小时前
C++26 Freestanding 库扩展详解:无操作系统也能用标准库
java·jvm·c++
Waay1 天前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
killerbasd1 天前
总结 7.04
jvm
qq_349447951 天前
十二、k8s中prometheus配置文件如何热加载
容器·kubernetes·prometheus
summer_west_fish1 天前
K8s下Java服务OOM排查指南
jvm
孫治AllenSun2 天前
【Prometheus & Grafana】搭建可视化监控平台
grafana·prometheus