2011-12-29 2 views
0

Я искал в Интернете, и я нашел что-то, что мне нужно в эти дни. Но иметь различие использовать его. Я хочу узнать статус службы Tomcat командой.Получение статуса службы от Tomcat JMX по командной строке

И я считаю, что у 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. Но я командный суфтер, поэтому я не могу использовать графический интерфейс. Мне нужна командная версия.

Ищете что-то может работать как:

[email protected]:# $TOMCAT_HOME/bin/catalina.sh --connect command=:status' 

и распечатать результат мне ...

Что я могу сделать?

ответ

1

Эти параметры -Dcom.sun... необходимы для Tomcat/JVM, что позволяет клиентам подключаться к нему через JMX. Без них вы можете подключаться только к запущенной JVM, если она находится на том же хосте и работает под одним и тем же пользователем. Кстати, -XX:+HeapDumpOnOutOfMemoryError и следующие биты совершенно неактуальны. Как только вы это запустите, подключитесь к своей JVM с помощью jconsole и посмотрите, что доступно в первую очередь.

jconsole - это графический инструмент. Если вам нужен только консольный JMX-клиент, посмотрите here или here.

Есть также другие способы контроля состояния Tomcat. Вы можете это сделать:

  • с использованием JMX proxy servlet;
  • с использованием Tomcat Manager Ant extensions;
  • создания сервлета пользовательского мониторинга и работает wget против
1

Вы также можете посмотреть на комбо Jolokia и Jmx4Perl, который поставляется с довольно инструмент поддержки (как могучего j4psh Shell или полнофункциональный Nagios плагин check_jmx4perl который включает около 10-20 специальных проверок Tomcat.