可以从命令行检索 jconsole 数据吗?
2022-09-01 06:03:38
我目前正在使用监视 Java 应用程序的性能指标,并希望编写此数据采集的脚本。jconsole
有没有办法将这些 VM 指标(堆内存使用情况、线程计数、CPU 使用率等)检索到 ?
其中的数据并不能完全削减它。STDOUT
top -p PID -b -n 1
谢谢
我目前正在使用监视 Java 应用程序的性能指标,并希望编写此数据采集的脚本。jconsole
有没有办法将这些 VM 指标(堆内存使用情况、线程计数、CPU 使用率等)检索到 ?
其中的数据并不能完全削减它。STDOUT
top -p PID -b -n 1
谢谢
jconsole
只是围绕平台中的JMX MBeans提供了一个包装器。MBeanServer
可以使用 Attach API 编写一个程序来连接到 VM,然后该 API 将查询 MBean。
或者,您可以通过 RMI 公开平台并以这种方式查询 MBean。MBeanServer
有关详细信息,请参阅 java.lang.management 包
也许jvmtop值得一看。
它是一个命令行工具,为多个指标提供实时视图。
JvmTop 0.4.1 amd64 8 cpus, Linux 2.6.32-27, load avg 0.12
http://code.google.com/p/jvmtop
PID MAIN-CLASS HPCUR HPMAX NHCUR NHMAX CPU GC VM USERNAME #T DL
3370 rapperSimpleApp 165m 455m 109m 176m 0.12% 0.00% S6U37 web 21
11272 ver.resin.Resin [ERROR: Could not attach to VM]
27338 WatchdogManager 11m 28m 23m 130m 0.00% 0.00% S6U37 web 31
19187 m.jvmtop.JvmTop 20m 3544m 13m 130m 0.93% 0.47% S6U37 web 20
16733 artup.Bootstrap 159m 455m 166m 304m 0.12% 0.00% S6U37 web 46