gpt4 book ai didi

java - 调试 VisualVM 远程连接

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:08:10 24 4
gpt4 key购买 nike

我在 Amazon 云中的 Linux 服务器上运行 Tomcat 6。我正在尝试通过我办公室的 Mac 使用 VisualVM 连接到它。我允许打开桌面和服务器之间的所有 TCP 端口,但我无法让 VisualVM 执行任何操作。

在 linux 机器上,我已经启动了 Tomcat:

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

在我的 Mac 上,我启动 VisualVM 并选择 File -> New JMX Connection...

我在框中输入 amazonhostname.com:9191。它显示“Adding amazonhostname.com:9191...”并在超时前等待几分钟。

在我的 Mac 上,我可以“telnet amazonhostname.com 9191”就好了,我尝试了一些其他的随机端口,它们都有效。我非常确信这不是防火墙问题,除非我需要打开 UDP 或 ICMP 或类似的东西。 (真的吗??)

服务器上的catalina.log,或者我Mac上的系统控制台,都没有和jmx相关的。服务器上的 netstat 显示 9191 和一些其他端口在所有接口(interface)上打开。

远程服务器上没有jstatd。这是 JMX 的先决条件吗? (我是 Java 的新手,我什至不确定这些东西是什么意思,但我在某处的博客文章中看到了它。我现在正在捕获救命稻草。)

最佳答案

在虚拟机启动前设置主机名属性:

java -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9191 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=the.public.ip \
-jar program.jar

将相关规则添加到您的安全组。

关于java - 调试 VisualVM 远程连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10543882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com