通过命令提示符从Tomcat JMX获取服务状态

时间:2011-12-29 15:52:04

标签: tomcat jmx status jconsole

我一直在互联网上搜索,这些天我找到了我需要的东西。但有差异使用它。我想通过命令了解Tomcat服务的状态。

而且我相信Tomcat没有获得状态命令。所以,我看到了这个:

CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9001 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -XX:+HeapDumpOnOutOfMemoryError -Djava.rmi.server.hostname=192.168.1.250"
export CATALINA_OPTS;

他们说将此添加到 catalina.sh 文件的开头并执行它以将JMX与JConsole一起使用。但我是命令提示器,所以我不能使用GUI。我需要它的命令版本。

寻找可以像:

一样的东西
root@ubuntu:# $TOMCAT_HOME/bin/catalina.sh --connect command=:status'

并将结果打印给我......

我该怎么办?

2 个答案:

答案 0 :(得分:1)

这些-Dcom.sun...参数对于Tomcat / JVM是必需的,因此它允许客户端通过JMX连接到它。如果没有这些,您只能连接到正在运行的JVM,如果它位于同一主机上并在同一用户下运行。顺便说一下,-XX:+HeapDumpOnOutOfMemoryError和以下的位完全不相关。运行后,使用jconsole连接到JVM并查看可用的JVM。

jconsole是一个GUI工具。如果您想要仅限控制台的JMX客户端,请查看herehere

还有其他方法可以监控Tomcat状态。您可以通过以下方式执行此操作:

答案 1 :(得分:1)

您还可以查看JolokiaJmx4Perl组合,其中包含一些工具支持(例如强大的j4psh Shell或全功能的Nagios插件{{3}其中包括大约10到20个特定的Tomcat检查。