prometheus监控JVM(接入tomcat)

一、整合jmx_exporter及tomcat

1、 jmx_exporter下载地址

https://github.com/prometheus/jmx_exporter/releases

2、 tomcat配置文件下载地址

https://github.com/prometheus/jmx_exporter/blob/main/example_configs/tomcat.yml

3、创建tomcat_exporter目录

root@localhost \~# mkdir /usr/local/jmx_prometheus

将下载的jmx_exporter的jar包及tomcat.yml文件放在此目录下

二、配置相关参数

1、配置tomcat.yml

将tomcat.yml文件中的所有Catalina字段全部替换成Tomcat

2、在/usr/local/tomcat/bin/catalina.sh文件中添加JVM参数

复制代码
PROMETHEUS_JMX_EXPORTER_OPTS="-javaagent: /usr/local/tomcat_exporter /jmx_prometheus_javaagent-0.20.0.jar =12345: /usr/local/tomcat_exporter /tomcat.yml"
JAVA_OPTS="$JAVA_OPTS $PROMETHEUS_JMX_EXPORTER_OPTS"

注:以上javaagent为jmx_exporter的jar包所在路径,12345端口可以在不占用端口的情况下自定义,后面为tomcat的yml配置文件路径。

3、启动tomcat并查看业务端口及12345端口是否启动,查看tomcat启动日志,查看是否报错

root@localhost \~# cd /usr/local/tomcat/bin/

root@localhost \~# ./startup.sh

4、访问prometheus jmx exporter HTTP服务获取监控数据

http://192.168.1.11:12345/metrics

三、prometheus监控部署及配置

部署略

1、配置

root@nginx-rtmp prometheus# cd /usr/local/prometheus

root@nginx-rtmp prometheus# vi prometheus.yml

最后添加:

复制代码
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['localhost:9090']

  - job_name: "Tomcat"
    static_configs:
      - targets: ["192.168.1.11:12345"]

root@nginx-rtmp prometheus# systemctl start prometheus.service

2、登录查看是否有数据

http://192.168.1.11:9090/

相关推荐
程序员清风6 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
readhere6 小时前
从ZYNQ7000开发板,学会启动嵌入式Linux系统——入门学习:EBAZ4205篇目录
linux·启动·嵌入式linux·zynq7000·ebaz4205
打工仔折腾 AI7 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
yyuuuzz7 小时前
跨境站点日志时区混乱的排查记录
运维·服务器·网络·云计算·aws·1024程序员节
‎ദ്ദിᵔ.˛.ᵔ₎8 小时前
关于Linux 线程局部存储的认识
linux·运维
GlobalInfo8 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人
数字新视界9 小时前
一体化机柜在数据中心运维中的创新应用与优势分析
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
隔窗听雨眠9 小时前
KingbaseES平替全链路实践:从迁移评估到可持续运维
运维
skywalk816310 小时前
登到192.168.1.5那台机器,看看今天白天,大约从早晨到晚上,都卡住了。看看因为什么卡住,为什么卡住而没有杀死那个导致卡死的进程,为什么
运维·系统·freebsd
运维行者_10 小时前
网络监控工具怎么选?从设备监控到智能运维的能力清单
运维·服务器·开发语言·网络·人工智能·支持向量机·php