我有一个作为 win 服务运行的应用程序(使用Apache-Procrun)。我想用 JVisualVM 监控那个应用程序。我使用命令行参数--openpid <PID>
没有成功,具有讽刺意味的是,旧的 JConsole 设法连接到该应用程序。
我还检查了 JVisualVM-故障排除指南%TMP%\hsperfdata_username
中描述的 -Directory 的所有问题。一切都很好。
如何让 JVisualVM 监控我的应用程序?
我有一个作为 win 服务运行的应用程序(使用Apache-Procrun)。我想用 JVisualVM 监控那个应用程序。我使用命令行参数--openpid <PID>
没有成功,具有讽刺意味的是,旧的 JConsole 设法连接到该应用程序。
我还检查了 JVisualVM-故障排除指南%TMP%\hsperfdata_username
中描述的 -Directory 的所有问题。一切都很好。
如何让 JVisualVM 监控我的应用程序?
JVisualVM 无法使用该参数连接到 win 服务--openpid <PID>
!由于一个Bug,旧的 JConsole 只能在 WinXP 中使用。另一种方法是为服务指定一个 JMX 代理。
此 VM 参数必须传递给 prunsrv.exe
-Dcom.sun.management.jmxremote.port=3333 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
有关更多详细信息,请查看:Connecting to JMX Agents Explicitly