Получение статуса сервиса от Tomcat JMX из командной строки - PullRequest
0 голосов
/ 29 декабря 2011

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

Поиск чего-то может работать как:

root@ubuntu:# $TOMCAT_HOME/bin/catalina.sh --connect command=:status'

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

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

Ответы [ 2 ]

1 голос
/ 30 декабря 2011

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

1 голос
/ 30 декабря 2011

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

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

Существуют также другие способы контроля состояния Tomcat.Это можно сделать следующим образом:

...