我正在尝试使用 VisualVM 来分析在 EC2 中运行的应用程序。VisualVM 连接到远程机器,并会向我显示 Overview、Monitor 和 VisualGC 选项卡(带有数据),但是当我选择 Sampler 选项卡时,我得到:
无法使用。无法创建到目标应用程序的 JMX 连接。使用“添加 JMX 连接”操作附加到应用程序。
我尝试添加 JMX 连接(到 EC2 公共地址和应用程序启动的 JMX 端口)无济于事。
我可以在 VisualVM 概述选项卡中看到我设置了应用程序的 jmxsettings(并且通过扩展,VisualVM 可以看到这些设置):
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9010
-Dcom.sun.management.jmxremote.local.only=false
-Dcom.sun.management.jmxremote.authenticate=false
我正在使用 EC2 安全模型,该模型将所有端口从 EC2 开放到我的本地计算机。我在两台机器上运行完全相同的 JVM。我已经在 EC2 机器上运行了 jstatd。
不知道还有什么可以尝试的。