Prometheus + JMX_Exporter + Grafana 搭建 JVM 监控

如果不会使用 Prometheus 和 Grafana,请看我的上一篇文章: juejin.cn/post/735623...

一、项目关联 JMX_Exporter

1、下载 JMX_Exporter 的 jar 包

github 地址:github.com/prometheus/...

这里注意看好版本,,我本地环境是 jdk1.7,所以用的是 0.17 版本。

2、创建 JMX_Exporter 配置文件

配置名为:config.yaml,配置内容如下:

makefile 复制代码
rules:
- pattern: ".*"

3、项目关联 JMX_Exporter

启动 JMX_Exporter 有两种方式,这里选择使用代理方式启动,官网也是推荐这种。命令如下:

java -javaagent:./jmx_prometheus_javaagent-0.17.1.jar=12345:config.yaml -jar my.jar

上面命令解释如下:

  • jmx_prometheus_javaagent-0.17.1.jar:这个就是 JMX_Exporter 官网下载的 jar 包。
  • 12345:这个是 JMX_Exporter 对外暴露指标的端口,如果要指定 ip 则格式为 host:port。
  • config.yaml:刚刚创建的配置文件。
  • my.jar:你自己项目的 jar 包。

4、验证是否成功启动

如果看到以下界面则代表启动成功。

二、Prometheus 关联 JMX_Exporter

1、修改Prometheus 配置文件

yaml 复制代码
global:
  scrape_interval: 15s
 
scrape_configs:
  - job_name: "prometheus"
    static_configs:
    - targets: ["localhost:9090"]
  - job_name: "linux-node-cluster" # node_exporter配置
    static_configs:
    - targets: ["localhost:9100"]
  - job_name: "jmx_exporter" # JMX_exporter配置
    static_configs:
    - targets: ["localhost:12345"]

在最后一行添加了 JMX_exporter 暴露出来的端口地址。

2、启动 Prometheus

启动命令为:prometheus --config.file=prometheus.yml

prometheus.yml 是我的 Prometheus 配置文件。

3、验证是否成功启动

如果出现以下界面则代表 Prometheus 启动成功并关联上了 JMX_Exporter。

三、Grafana 关联 Prometheus

启动 Grafana 并关联 Prometheus 数据源。

tip:Grafana 使用的图表 id 为 11278

1、验证是否成功启动

如果出现以下界面则代表成功。

相关推荐
卡布奇诺-海晨40 分钟前
2025版本的idea解决Git冲突
java·git·intellij-idea
Flash Dog41 分钟前
【MyBatis】——执行过程
java·mybatis
Li_76953243 分钟前
2025.2.X 版本 IDEA maven 打包乱码问题的解决
java·maven·intellij-idea
lpruoyu2 小时前
颜群JVM【04】助记符
jvm
Flash Dog2 小时前
【JVM】——实战篇
jvm
DKPT2 小时前
JVM栈溢出和堆溢出哪个先满?
java·开发语言·jvm·笔记·学习
m0_475064502 小时前
jvm双亲委派的含义
java·jvm
胡小禾2 小时前
JDK17和JDK8的 G1
jvm·算法
海梨花2 小时前
今日八股——JVM篇
jvm·后端·面试
毕设源码-朱学姐6 小时前
【开题答辩全过程】以 爱心捐赠网站为例,包含答辩的问题和答案
java·eclipse