繁体   English   中英

如何使用Jconsole监控Java程序?

[英]How to monitor a Java program using Jconsole?

我编写了一个程序,使用2个线程打印1到200的数字。

现在我想使用JConsole监视这个程序。

基本上我想学习如何使用JConsole来监视应用程序。

我搜索谷歌但找不到有用的东西。

我怎么能做到这一点?

当我在bin文件夹中启动jconsole.exe时。 它要求输入主机名和端口号。 在我的情况下,我猜没有。 有人可以指导。

假设你在包p1下有一个类Test ,你可以使用2个线程(你想要监视的)打印1到200的数字。

因此,要使用jconsole监视应用程序,您需要首先编译并执行代码,同时执行代码...

  • Start - > Run - > jconsole.exe然后单击/按Enter

    在此输入图像描述

  • 选择要监视的应用程序,然后单击“ Connect

    在此输入图像描述

或者,您也可以将VisualVM用于此目的。

  • 在此输入图像描述

您需要通过添加以下JVM参数来启用JMX

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

这些参数将允许任何JMX监视工具访问和监视您的应用程序。

另外我建议你使用visualVM这个更强大的工具。 visualVM一些功能:

  • 提供CPU分析。
  • 提供有关线程的所有信息。
  • 提供JVM堆和内存状态。
  • 提供有关GC活动的信息。

JConsole在JConsole启动时查找所有正在运行的应用程序。 然后,只有当前运行的应用程序端口和主机才会显示在列表中。 首先,您需要启动应用程序然后启动JConsole。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM