发布时间:2020-03-18 10:51:38编辑:admin阅读(3905)
https://github.com/prometheus/jmx_exporter
它是Prometheus官方组件,作为一个JAVA Agent来提供本地JVM的metrics,并通过http暴露出来。这也是官方推荐的一种方式,可以获取进程的信息,比如CPU和内存使用情况。
Jmx_exporter是以代理的形式收集目标应用的jmx指标,这样做的好处在于无需对目标应用做任何的改动。
运行JMX exporter的方式:
java XXX -javaagent:/root/jmx_exporter/jmx_prometheus_javaagent-0.12.0.jar=3010:/root/jmx_exporter/config.yaml -jar XXX.jar
目前最新版是0.12.0,下载链接为:
我的prometheus安装路径为:/data/prometheus
新建配置文件simple-config.yml
mkdir /data/prometheus/jmx_exporter cd /data/prometheus/jmx_exporter wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.12.0/jmx_prometheus_javaagent-0.12.0.jar vim simple-config.yml
内容如下:
--- lowercaseOutputLabelNames: true lowercaseOutputName: true whitelistObjectNames: ["java.lang:type=OperatingSystem"] rules: - pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):' name: os_$1 type: GAUGE attrNameSnakeCase: true
比如我有一个rms的java应用,启动方式为:
java -jar /data/rms/RMS.jar
使用JMX Exporter插件收集数据,需要改成这样:
java -javaagent:/data/prometheus/jmx_exporter/jmx_prometheus_javaagent-0.12.0.jar=3010:/data/prometheus/jmx_exporter/simple-config.yml -jar /data/rms/RMS.jar
注意:3010是代理端口,可以随意指定。
修改配置文件,增加一个job_name
vim /data/prometheus/prometheus.yml
最后一行增加
- job_name: 'java' scrape_interval: 30s static_configs: - targets: ['localhost:3010']
重启prometheus
/etc/init.d/prometheus-server restart
模板链接为:
https://grafana.com/grafana/dashboards/8563/revisions
点击下面的Download,进行下载。
登录Grafana,点击import
上传json
数据源选择 Prometheus
最后打开刚刚导入的Dashboard,如下图
本文参考链接:
https://chanjarster.github.io/post/prom-grafana-jvm/
上一篇: Kuboard Kubernetes安装
下一篇: grafana的用户及权限的配置
47745
46237
37110
34627
29229
25886
24745
19863
19417
17909
5716°
6316°
5836°
5888°
6985°
5829°
5846°
6361°
6316°
7675°