Введение в мониторинг JMX в IDE NetBeans

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

В новой версии данного документа добавлена информация о модуле JMX Wizard 3.0 для NetBeans IDE 6.5 и более поздних версий, который работает на платформах JDK 6 или JDK 7. Модуль JMX можно загрузить в Центре обновлений.

Примечание. В этом документе в кратком и сжатом виде приведены основные сведения о модуле JMX для IDE NetBeans. Более подробную информацию можно получить, выполнив задания в разделе Добавление оркестровки JMX в приложение Java Практического руководства по модулю JMX.

В этом кратком руководстве представлен обзор возможностей модуля JMX:

Содержимое на этой странице применимо к IDE NetBeans 7.2, 7.3, 7.4 и 8.0
  • Мастеры для создания компонентов JMX MBean и диспетчеров.
  • Обновление существующих компонентов MBean путем добавления атрибутов и операций, реализации интерфейса MBeanRegistration или интерфейса NotificationEmitter.
  • Создание компонента MBean на основе существующего класса Java.
  • Регистрация компонентов MBean на сервере Java Platform MBean Server.
  • Возможность запуска консоли управления платформой Java (JConsole).
  • Возможность запуска и отладки приложений в консоли JConsole.
  • Образец приложения на основе игры Anagram для демонстрации добавления возможностей JMX в собственное приложение.
  • Мастер для создания файла свойств управления, позволяющего запускать защищенные управляемые виртуальные машины Java (JVM).
  • Онлайн-справка.
  • Практические руководства доступны на сайте netbeans.org.

Предпосылки

Предполагается, что читатель обладает базовыми знаниями или опытом программирования по следующим технологиям.

Знания в области мониторинга и управления платформой Java будут преимуществом.

Программное обеспечение, требуемое для работы с данным учебным курсом.

Для работы с этим учебным курсом на компьютере должно быть установлено следующее программное обеспечение.

Программное обеспечение или ресурс Требуемая версия
IDE NetBeans пакет Java, версии 7.2, 7.3, 7.4, 8.0
Комплект для разработчика на языке Java (JDK) версия 7 или 8
Подключаемый модуль JMX Доступен в Центре обновлений NetBeans
Подключаемый модуль JConsole Доступен в Центре обновлений NetBeans

Чтобы установить подключаемые модули JMX и JConsole, выберите Сервис > Подключаемые модули и загрузите модули из Центра обновлений NetBeans.

Работа с мастерами JMX

После установки подключаемого JMX и открытия проекта можно запустить мастер JMX. Для этого выберите Файл > Создать файл (Ctrl-N), затем выберите категорию JMX. После этого можно выбрать один из следующих вариантов:

  • Файл конфигурации управления. Стандартный файл свойств Java, в котором хранится конфигурация управления JMX, в частности, параметры удаленных подключений и безопасности.
  • Несколько типов компонентов JMX MBean. Компонент MBean может представлять устройство, приложение или любой другой контролируемый ресурс. Компоненты MBean предоставляют интерфейс управления: набор доступных для чтения/записи атрибутов и набор вызываемых операций, а также самоописание. Этот интерфейс управления не меняется на протяжении всего жизненного цикла экземпляра MBean. Компоненты MBean также могут генерировать уведомления при возникновении определенных событий. Компоненты JMX MBean должны быть зарегистрированы на сервере MBean.
  • Диспетчер JMX. Диспетчер JMX - это любое приложение, которое подключается к удаленному серверу JMX MBean.
    снимок мастеров создания файлов JMX

Обновление компонентов MBean

В компоненты MBean можно добавлять атрибуты и операции. Для этого используются команды контекстного меню JMX, при выборе которых открывается диалоговое окно. Также в компоненты MBean можно добавить реализацию интерфейса NotificationEmitter.

Чтобы обновить компонент MBean, выберите файл Java с классом MBean в дереве проектов и щелкните правой кнопкой мыши на узле, чтобы открыть контекстное меню JMX. Также можно просто щелкнуть правой кнопкой мыши в файле Java с классом MBean, открытом в редакторе, и выбрать нужную команду контекстного меню.

Эти действия показаны в упражнении 3 практического руководства Добавление оркестровки JMX в приложение Java.

Регистрация компонентов MBean

Для удаленного подключения компонентов MBean и управления приложением необходимо, чтобы компоненты MBean были зарегистрированы на сервере MBean.

Сервер MBean - центральный элемент технологии JMX. Он хранит ссылки на все зарегистрированные компоненты MBean, отправляет уведомления о регистрации или удалении компонентов MBean, а также разрешает удаленные подключения для предоставления атрибутов и операций зарегистрированных на нем компонентов MBean. Если у вас недостаточно знаний о роли сервера MBean, ознакомьтесь с документацией API javax.management.MBeanServer.

Начиная с JDK 5, платформа Java включает в себя стандартный сервер MBean - Platform MBean Server. Этот сервер позволяет контролировать состояние виртуальной машины JVM, но на нем также можно регистрировать компоненты MBean. Дополнительные сведения о сервере Java Platform MBean см. в документации API java.lang.management.ManagementFactory .

Фрагмент кода приложения, в котором будут зарегистрированы компоненты MBean, определяется логикой. Как правило, это фаза инициализации класса Main. Щелкните правой кнопкой мыши в редакторе в том месте, где хотите создать код регистрации компонента MBean, выберите подменю JMX и команду 'Создать регистрацию MBean...'.

Это действие показано в упражнении 5 практического руководства Добавление оркестровки JMX в приложение Java.

Реализация и исполнение управляемых приложений

JConsole - совместимый с JMX графический инструмент, предназначенный для мониторинга виртуальной машины Java. JConsole позволяет контролировать как локальные, так и удаленные виртуальные машины JVM. Также с помощью этой консоли можно контролировать приложения JMX и управлять ими.

Далее описана типичная процедура реализации и исполнения управляемых приложений:

  1. Создание компонентов MBean
  2. Добавление реализации в компоненты MBean
  3. Создание кода регистрации компонентов MBean
  4. Запуск или отладка проекта в JConsole.

После установки подключаемых модулей JMX и JConsole на панели инструментов появятся следующие кнопки. Эти команды также доступны в пункте 'Отладка' главного меню.

Кнопка Описание
Кнопка 'Запуск основного проекта с функциями мониторинга и управления' на панели инструментов Запуск основного проекта с функциями мониторинга и управления
Кнопка 'Отладка основного проекта с функциями мониторинга и управления' на панели инструментов Отладка основного проекта с функциями мониторинга и управления
Кнопка 'Открыть консоль управления JConsole' на панели инструментов Открыть консоль управления JConsole

Примечание. JConsole является компонентом платформы Java и может использоваться независимо от IDE. Подробные сведения:

Запуск демонстрационного приложения

В состав модуля JMX входит демонстрационное приложение со встроенными функциями мониторинга JMX.

  1. Выберите команду "Файл" > "Новый проект".
  2. В разделе 'Образцы' выберите категорию JMX.
  3. Выберите проект 'Игра Anagram под управлениемJMX'.
    снимок проекта 'Игра Anagram под управлениемJMX' в мастере создания проектов
  4. Нажмите 'Далее'. Имя проекта и местоположение по умолчанию можно не менять. Убедитесь, что установлен флажок "Задать в качестве основного проекта". Нажмите кнопку 'Готово'.

    Примечания. Среда IDE может запросить разрешение на установку библиотеки JUnit, если вы не установили подключаемый модуль JUnit ранее. Вы можете нажать 'Разрешить' в диалоговом окне 'Разрешить проблему с ссылками' для запуска программы установки подключаемого модуля JUnit. В качестве альтернативы вы можете установить подключаемый модуль JUnit в диспетчере подключаемых модулей.

  5. Когда проект создан и выбран в качестве основного, запустите его в консоли JConsole, нажав на кнопку 'Запуск основного проекта с функциями мониторинга и управления'.

    Примечания. Вы можете увидеть предупреждение о сбое подключения на консоли управления и мониторинга Java при попытке консоли подключиться к процессу Anagram Game. Для этой учебной программы вы можете нажать Ненадежно, когда вам будет предложено разрешить подключение.

    При нажатии на эту кнопку запускается игра Anagram:

    Игра Anagram

    Также отображается окно JConsole.

  6. В окне JConsole перейдите на вкладку MBeans и в дереве слева откройте все узлы под anagrams.toy.com, как показано на рисунке.
    снимок окна JConsole
  7. Выберите узел 'Уведомления' и нажмите кнопку 'Подписаться' в нижней части окна консоли. После этого JConsole будет получать уведомления при расшифровке каждой анаграммы.
  8. Теперь перейдите в окно игры Anagram и расшифруйте первые три или четыре анаграммы (ответы находятся в классе WordLibrary: abstraction, ambiguous, arithmetic, backslash...)
  9. Вернитесь в консоль JConsole. Вы увидите, что получено четыре уведомления.
  10. При нажатии на узел 'Атрибуты' видно, что атрибуты обновлены:
    Снимок окна JConsole с обновленными значениями

См. также

В этом документе в кратком и сжатом виде приведены основные сведения о модуле JMX для IDE NetBeans. Более подробную информацию можно найти в практическом руководстве по модулю JMX:

get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo