Мониторинг Tomcat JMX - занятые темы?
Я пытаюсь контролировать Tomcat 6.0 с помощью JMX. В частности, я хочу отслеживать количество активных потоков, обслуживающих запросы, чтобы получать оповещения, если оно приближается к максимуму. В то время как у меня работает мониторинг JMX, я не могу определить количество потоков. Все, что я прочитал, предлагает взглянуть на:
Catalina:type=ThreadPool,name=http-8080
И исследуя атрибут currentThreadsBusy. К сожалению, мне кажется, что я получаю -1 только в качестве значения. Я пробовал это на пяти разных экземплярах Tomcat и всегда получаю -1.
Я что-то упускаю? Должен ли я смотреть на другое значение?
РЕДАКТИРОВАТЬ #1
Я использую Executor, поэтому я проверил атрибут activeCount в Executor, и он всегда возвращает 0.
1 ответ
Значение может стать отрицательным, если вы используете Executor, то есть пул потоков, совместно используемый компонентами. Если вы настроили Executor (проверьте это в server.xml), вы можете получить интересующее вас значение из атрибута Executor activeCount.
Я полагаю, что с Tomcat 7 у вас не возникнет этой проблемы.