您的位置:首页 > 文旅 > 美景 > JVM监控-JMX探针的安装和使用

JVM监控-JMX探针的安装和使用

2025/2/13 19:54:16 来源:https://blog.csdn.net/Lionel_SSL/article/details/139352852  浏览:    关键词:JVM监控-JMX探针的安装和使用

jvm监控的搭建和使用

​ Java Management Extensions(JMX)是一种Java标准,用于管理和监控Java应用程序,特别是分布式系统。它提供了一种标准化的方式来管理应用程序的各种方面,包括性能监控、配置更改、事件通知等。目前JMX最常用的就是用来做JAVA程序的监控,市面上常见的Java 监控框架基本都是基于JMX来实现的。

准备文件1 2:文件1可以自行下载(在文章上面);文件2复制以下内容自行创建文件即可;

  1. 探针文件:jmx_prometheus_javaagent-0.17.2.jar
  2. 配置文件:jmx_exporter_config.yaml
---   
lowercaseOutputLabelNames: true
lowercaseOutputName: true
rules:
- pattern: 'Catalina<type=GlobalRequestProcessor, name=\"(\w+-\w+)-(\d+)\"><>(\w+):'name: tomcat_$3_totallabels:port: "$2"protocol: "$1"help: Tomcat global $3type: COUNTER
- pattern: 'Catalina<j2eeType=Servlet, WebModule=//([-a-zA-Z0-9+&@#/%?=~_|!:.,;]*[-a-zA-Z0-9+&@#/%=~_|]), name=([-a-zA-Z0-9+/$%~_-|!.]*), J2EEApplication=none, J2EEServer=none><>(requestCount|maxTime|processingTime|errorCount):'name: tomcat_servlet_$3_totallabels:module: "$1"servlet: "$2"help: Tomcat servlet $3 totaltype: COUNTER
- pattern: 'Catalina<type=ThreadPool, name="(\w+-\w+)-(\d+)"><>(currentThreadCount|currentThreadsBusy|keepAliveCount|pollerThreadCount|connectionCount):'name: tomcat_threadpool_$3labels:port: "$2"protocol: "$1"help: Tomcat threadpool $3type: GAUGE
- pattern: 'Catalina<type=Manager, host=([-a-zA-Z0-9+&@#/%?=~_|!:.,;]*[-a-zA-Z0-9+&@#/%=~_|]), context=([-a-zA-Z0-9+/$%~_-|!.]*)><>(processingTime|sessionCounter|rejectedSessions|expiredSessions):'name: tomcat_session_$3_totallabels:context: "$2"host: "$1"help: Tomcat session $3 totaltype: COUNTER
  • 安装探针监控应用的JVM参数

(1)将上述两个文件放在任意目录下,修改tomcat目录/bin/catalina.sh,找到JAVA_OPTS添加

# -javaagent:[jmx探针jar包路径]=[暴露的端口]:[yaml配置文件路径]
JAVA_OPTS="$JAVA_OPTS -javaagent:/opt/apache-tomcat-8.5.35/bin/jmx_prometheus_javaagent-0.17.2.jar=30013:/opt/apache-tomcat-8.5.35/bin/jmx_exporter_config.yaml"

这里的文件路径一定要和存放的路径一致;暴露的端口任意指定。

如果使用的为内嵌tomcat,启动时使用启动脚本来启动war包,而不是启动tomcat,则可以将 -javaagent:[jmx探针jar包路径]=[暴露的端口]:[yaml配置文件路径] 加到启动命令中去

(2)重启Tomcat,至此服务器端配置完成

(3)在浏览器中使用 IP:30013 进行访问:

jmx监控数据

(4)将 ip + 端口 配置到Prometheus

 - job_name: "bmjs_gk"static_configs:- targets:- "xxx.xxx.xxx.xxx:30013"

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com