Как управлять веб-приложением JMX - PullRequest
1 голос
/ 20 августа 2009

Я прошел процесс на этой странице, чтобы показать интерфейс JMX веб-приложения.

Мне удалось просмотреть открытый интерфейс на прокси-сервере Tomcat JMX, но когда я загружаю JConsole и ищу открытый интерфейс mbean, я не могу найти ничего, связанного с открытыми атрибутами и операциями.

В jconsole нет конкретной записи для веб-приложения, поэтому я подумал, что она может быть в записи TOMCAT jmx. Это не. (не говоря уже о том, что мне удалось увидеть его на странице прокси-сервера tmcat jmx).

Как я могу управлять своим веб-приложением локально? Почему JConsole не показывает это?

1 Ответ

3 голосов
/ 16 ноября 2009

Мне удалось это исправить, выполнив несколько основных шагов -

  1. В методе contextInitialized слушателя контекста webapp я создал экземпляр одноэлементного класса, который будет запускать и реализовывать mbean (сам сервлет не может реализовать mbean, поскольку он только просыпается, чтобы принимать запросы от сервера).
  2. Сервлет «информирует» синглтон о каждой операции, которую мы хотим отслеживать, а синглтон действительно сообщает об этом через jmx.
  3. В синглтоне, который я зарегистрировал на сервере mbean с помощью этой команды:

    ManagementFactory.getPlatformMBeanServer (). RegisterMBean (this, name);

Вот и все. (В скорлупе ореха)

...