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 监控连接池相关.
相关推荐
老三牛擦13 小时前
订单履约流程
jvm
青春逝如流水1 天前
Java 线程在内存模型(JMM)与 JVM 实现:规范与落地的多元路径
java·开发语言·jvm·多线程·ai文章
colinu1 天前
C++ 异步任务与线程生命周期:`std::async`、`future`、`thread`、`jthread` 与协作式退出
java·jvm·c++
wuminyu1 天前
ForkJoinPool窃取线程在扫描其他WorkQueue时的随机采样算法与Phase线程挂起唤醒机制解析
java·linux·c语言·jvm·c++
DongQiShanRen1 天前
玄龙(上):TICK 主循环——意识心跳怎么跳
linux·jvm·数据库·人工智能·数据挖掘·rust
leisoo80972 天前
融资融券数据怎么查两融指标含义与杠杆观察方法 IG50免费开源股票数据API接口
开发语言·jvm·数据库·python·json
leisoo80972 天前
股票筹码分布怎么用获利比例成本区间与集中度实战 IG50免费开源股票数据API接口
开发语言·jvm·数据库·python·开源
晒太羊的猫2 天前
jvm面试题
jvm
BLUcoding3 天前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
夜之眷属3 天前
Core dump 崩溃排查:JVM 宕机后,那份 core 文件怎么用 gdb 还原现场
java·运维·服务器·jvm