利用jmc远程诊断java进程

364 阅读1分钟

JMC:Java Mission Control

JMC打开性能日志后,主要包括7部分性能报告,分别是一般信息、内存、代码、线程、I/O、系统、事件。其中,内存、代码、线程及I/O是系统分析。

使用方式

首先,远程机器被监控的程序需要开启调试端口,在执行java命令行中加入以下属性,属性没有以ssl安全认证方式连接的,案例中启动监听端口为7091

-Dcom.sun.management.jmxremote.port=7091 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false

示例

java \
-Dcom.sun.management.jmxremote.port=7091 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar test.jar

771c918c47bebf02b9e0f44288f6e811_285763-20180309140350592-405443574.png

652f26abb7527924486cf6b594744911_df19c889-ec93-3274-97be-39bf98cbb22b.png