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)

相关推荐
MAVER1CK1 小时前
Docker容器创建好后修改容器配置
运维·docker·容器
匆匆那年9673 小时前
VSCode 远程 Linux 使用Codex
linux·ide·vscode
それども3 小时前
Gradle 构建疑难杂症 Could not find netty-transport-native-epoll-linux-aarch_64.ja
java·服务器·gradle·maven
NightReader4 小时前
CPU 高使用率,怎么降下来
运维·服务器
SWAGGY..4 小时前
Linux系统编程:(七)Makefile入门:轻松掌握编译自动化
linux·运维·自动化
开开心心就好5 小时前
免费流畅的远程控制实用工具
linux·运维·服务器·网络·智能手机·excel
黑猫学长呀6 小时前
存储宝典第2篇:盲封TT wafer是什么意思?
linux·嵌入式硬件·项目·芯片·ufs·晶圆·产测
Strugglingler6 小时前
【Linux 用户态操作 UART】
linux·uart
代码熬夜敲Q7 小时前
ENSP 网络工程实验
linux·运维·服务器
銳昊城7 小时前
项目七: 配置与管理Web服务器(2) C2
运维·服务器