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文件放在此目录下 ![在这里插入图片描述](https://file.jishuzhan.net/article/1694906442844213249/9582e2995e7a414494df8eb0b25ec284.png) 二、配置相关参数 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" ![在这里插入图片描述](https://file.jishuzhan.net/article/1694906442844213249/d095a054601e41e9923d44fb26b270f1.png) 注:以上javaagent为jmx_exporter的jar包所在路径,12345端口可以在不占用端口的情况下自定义,后面为tomcat的yml配置文件路径。 3、启动tomcat并查看业务端口及12345端口是否启动,查看tomcat启动日志,查看是否报错 \[root@localhost \~\]# cd /usr/local/tomcat/bin/ \[root@localhost \~\]# ./startup.sh ![在这里插入图片描述](https://file.jishuzhan.net/article/1694906442844213249/f38c6b704061441eb273361200671ed5.png) 4、访问prometheus jmx exporter HTTP服务获取监控数据 http://192.168.1.11:12345/metrics ![在这里插入图片描述](https://file.jishuzhan.net/article/1694906442844213249/4639d41554ef4cde962fde69b6e610d9.png) 三、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/ ![在这里插入图片描述](https://file.jishuzhan.net/article/1694906442844213249/27b70cb9ab5a4b99906bb95340e094c4.png)

相关推荐
寻道模式4 小时前
【运维心得】三步10分钟拆装笔记本键盘
运维·计算机外设·笔记本
元清加油4 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
炫友呀5 小时前
Centos 更新/修改宝塔版本
linux·运维·centos
闻道且行之5 小时前
嵌入式|VNC实现开发板远程Debian桌面
运维·debian·嵌入式
向日葵.6 小时前
fastdds.ignore_local_endpoints 属性
服务器·网络·php
IT成长日记6 小时前
【自动化运维神器Ansible】Playbook中的when条件判断:精细化控制任务执行
运维·自动化·ansible·playbook·when·条件判断
昵称为空C8 小时前
SpringBoot接口限流的常用方案
服务器·spring boot
Peter_Deng.8 小时前
Linux 下基于 TCP 的 C 语言客户端/服务器通信详解(三个示例逐步进阶)
服务器·c语言·网络
花小璇学linux8 小时前
imx6ull-驱动开发篇24——Linux 中断API函数
linux·驱动开发·嵌入式软件
林开落L9 小时前
库制作与原理(下)
linux·开发语言·centos·库制作与原理