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、验证是否成功启动

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

相关推荐
fīɡЙtīиɡ ℡1 分钟前
AI 应用系统设计
java·开发语言·人工智能
城管不管10 分钟前
重生——第十一次面试之挖财一面2026.8.19已OC
java·服务器·jvm·数据库·spring·面试·职场和发展
码匠许师傅10 分钟前
【C++ 面试真题】26. 聊聊 C++ 的智能指针
java·c++·面试
AI绘画哇哒哒23 分钟前
【建议收藏!】35岁后端血泪忠告,这3类人别硬转Agent(过来人亲述)
java·人工智能·后端·ai·程序员·大模型·agent
最强小杰1 小时前
gpt-5.6-sol 频繁报 503 怎么办?区分容量熔断和限速 429 的排查方法 + 可复用 retry wrapper
java·人工智能·gpt·ai
唐青枫1 小时前
一个值多种形态:Zig union、Tagged Union 与内存布局实战
后端
卷无止境2 小时前
Windows 上丝滑开发 Python,并稳定构建 Docker 镜像
后端·python·docker
Nturmoils2 小时前
备份完不算完,先还原到临时库验一遍
后端
Csvn2 小时前
📊 SQL 入门 Day 22:视图与物化视图
后端·sql
Csvn2 小时前
🐍 Day 4: Python 控制流 — 条件、循环与推导式的艺术
后端·python