繁体   English   中英

如何在 Ubuntu Linux 中使用 JVisualvm 监控 Tomcat6?

[英]How do I monitor Tomcat6 with JVisualvm in Ubuntu Linux?

我正在尝试设置 JVisualVm 来监控 Tomcat 6 实例(在 Ubuntu 服务器 10.04 LTS 上运行)。 我见过其他问题,但没有一个能直接回答我的问题。 我尝试使用 JVisualvm 连接到 Tomcat 并返回“无法连接”错误 - 但是正在与服务器建立 TCP 连接; 服务器在短暂的流量爆发后断开连接。

我已经将此添加到 /etc/default/tomcat6 并重新启动了 tomcat6

# This enables JMX in order to permit VisualVM to profile the JVM.
JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=9090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

我使用默认设置启动 rmiregistry:

rmiregistry &

我还没有开始jstatd 在服务器上安装它需要完整的 JDK,它需要 X 库。 我不会为了获得一个二进制文件而安装 X。

我想知道不运行jstatd是否与它有关; 我的印象是我既不需要 RMI 也不需要 jstatd,只要我可以通过 JMX 端口直接使用 JMX。

服务器和 JVisualvm 客户端之间没有防火墙,iptables 主机防火墙是打开的。 使用jconsole会导致相同的错误。

针对本地 Ubuntu 10.04 机器运行 JVisualVM(通过使用其 IP 地址和 JMX 端口)并添加 JMX 实例工作正常 - 我既没有运行rmiregistry也没有运行jstatd - 尽管监视器显示 RMI 线程正在运行。

问题:我必须做什么(在服务器或客户端)才能通过 JVisualVM 通过 JMX 监控 Tomcat(和其他 Java 程序)?

提前致谢。

如果没有防火墙,请尝试为您的 Tomcat 设置 java.rmi.server.hostname 系统属性。 将此添加到您的 Tomcat 的 JAVA_OPTS:

-Djava.rmi.server.hostname=<IP address of Ubuntu Server>

您无需启动rmiregistry也无需运行jstatd即可远程监控 Tomcat。

作为记录: jstatd不需要 X 库,它仅通过其他一些推荐的 package 依赖于它们。 您可以使aptitudeapt-get跳过推荐软件包的安装,并在没有任何 X11 库的情况下安装jstatd

对于aptitude , go 进入选项➞首选项➞自动安装推荐的软件包。 对于apt-get ,请参阅askubuntu 上的这个问题

暂无
暂无

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

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