首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Ubuntu Linux中使用JVisualvm监控Tomcat6?

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

Stack Overflow用户
提问于 2011-06-15 01:02:26
回答 2查看 4.9K关注 0票数 4

我正在尝试设置JVisualVm来监控Tomcat6实例(在Ubuntu Server10.04LTS上运行)。我看过其他问题,但没有一个能直接回答我的问题。我尝试用JVisualvm连接Tomcat,它返回一个“无法连接”的错误--但是服务器正在进行TCP连接;服务器在短时间的流量突发后丢弃了连接。

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

代码语言:javascript
复制
# 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:

代码语言:javascript
复制
rmiregistry &

我还没有启动jstatd;在服务器上安装它需要完整的JDK,这需要X库。我不会仅仅为了得到一个单独的二进制文件而安装X。

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

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

在本地Ubuntu10.04机器上运行JVisualVM (通过使用其IP地址和JMX端口)并添加一个JMX实例运行良好-而且我既没有运行rmiregistry也没有运行jstatd -尽管监视器显示RMI线程正在运行。

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

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-15 15:51:08

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

代码语言:javascript
复制
-Djava.rmi.server.hostname=<IP address of Ubuntu Server>

你不需要启动rmiregistry,也不需要运行jstatd就可以远程监控你的Tomcat。

票数 4
EN

Stack Overflow用户

发布于 2013-03-26 02:18:25

需要说明的是:jstatd不需要X库,它只通过一些其他推荐的包依赖于X库。您可以让aptitudeapt-get跳过安装推荐的软件包,并安装jstatd而不安装任何X11库。

对于aptitude,请进入options➞preferences➞Install recommended automatically。有关apt-get,请参阅this question on askubuntu

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6347261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档