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 监控连接池相关.
相关推荐
AAA 建材批发王哥(天道酬勤)1 小时前
JVM 由多个模块组成,每个模块负责特定的功能
jvm
JavaNice哥8 小时前
1初识别jvm
jvm
涛粒子8 小时前
JVM垃圾回收详解
jvm
YUJIANYUE8 小时前
PHP将指定文件夹下多csv文件[即多表]导入到sqlite单文件
jvm·sqlite·php
逊嘘8 小时前
【Java语言】抽象类与接口
java·开发语言·jvm
川石课堂软件测试8 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
aloha_78915 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot
鱼跃鹰飞18 小时前
大厂面试真题-简单说说线程池接到新任务之后的操作流程
java·jvm·面试
王佑辉18 小时前
【jvm】Major GC
jvm