Розробка диспетчера java management extensions (jmx) і підключення до віддаленого агенту jmx

Очікувана тривалість: 30 хвилин

Модуль NetBeans JMX Wizard інтегрує технологію JMX в робочі процеси IDE NetBeans. Цей модуль дозволяє швидко розробляти керуючі програми, додавати функції управління в існуючі програми, розробляти програми-диспетчери і контролювати стан віртуальної машини.

За допомогою цього практичного керівництва ви навчитеся виконувати наступні дії:

  1. Запускати агент JMX, щоб він став доступний для диспетчера JMX.
  2. Створювати диспетчер JMX.
  3. Запускати диспетчер.
  4. Оновлювати диспетчер, додаючи в нього власну логіку управління.

Вправи по темам керівництва

  • Створення проекту демонстраційного керуючого додатки Anagram
  • запуск агента
  • Створення проекту диспетчера
    • створення проекту
    • Створення виконуваного класу диспетчера
  • запуск диспетчера

передумови

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

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

Для роботи з цим навчальним курсом на комп'ютері має бути встановлено таке програмне забезпечення.

Щоб встановити модулі JMX і JConsole. виберіть Сервіс> Модулі та завантажте модулі з Центру оновлень NetBeans.

  • Вміст довідки Netbeans (Довідка> Зміст довідки> JMX). Довідку також можна викликати в будь-якому майстра.

Створення проекту демонстраційного керуючого додатки Anagram

Мета цієї вправи - створити агент JMX, до якого буде підключатися додаток-диспетчер. До складу модуля JMX входить демонстраційний Java-проект агента JMX. У цій вправі ви будете працювати з демонстраційним проектом, щоб не створювати агент JMX з нуля.

запуск агента

Мета цієї вправи - запустити додаток Java з включеними функціями віддаленого управління JMX. Функції віддаленого управління дозволяють клієнтським застосуванням (диспетчерам JMX) підключатися до додатка (агент JMX) і візуально відображати дані моніторингу та управління.

Примітка. В якості агента JMX, для якого можна включити віддалене управління, може виступати будь-яке робоче додаток, створене на платформі JDK 1.5, JDK 1.6 або JDK 1.7.

Ви можете вказати порт, з якого агент чекатиме вхідні запити від JMX. У цьому керівництві використовуватиметься порт за замовчуванням (1 099). Якщо ви вказали інший номер порту, вам буде потрібно внести відповідні зміни на всіх етапах. Крім того, в цьому керівництві не вказується файл властивостей. (При розробці власних додатків файли властивостей управління можна створювати за допомогою майстра.)

  • Виберіть 'Налагодження> Запуск основного проекту з функціями моніторингу та управління' в головному меню, щоб запустити додаток Anagram Game.

    Також можна натиснути кнопку 'Запуск основного проекту з функціями моніторингу та управління' на панелі інструментів ().

    При запуску програми відкривається вікно 'Гра Anagram'. JVM прослуховує порт локального вузла +1099 на предмет доступу RMI. Запущений агент JMX очікує керуючих запитів від диспетчера.

    Розробка диспетчера java management extensions (jmx) і підключення до віддаленого агенту jmx

    Вікно додатка Anagram можна згорнути (не закриваючи додаток).

    Створення проекту диспетчера

    У цій вправі показано, як створити проект програми Java з ім'ям JMXAnagramManager і створити виконуваний клас диспетчера за допомогою майстра.

    створення проекту

    Примітка. У наступній вправі ви дізнаєтеся, як створити основний виконуваний клас за допомогою майстра диспетчера JMX.

    При натисканні на кнопку 'Готово' новий проект з'являється в дереві проектів. Як бачите, проект диспетчера JMX нічим не відрізняється від будь-якого іншого проекту програми Java.

    Створення виконуваного класу диспетчера

    У цій вправі ви навчитеся створювати виконуваний клас диспетчера за допомогою майстра диспетчера JMX.

    Розробка диспетчера java management extensions (jmx) і підключення до віддаленого агенту jmx

    У списку 'Протокол' представлений тільки один елемент. Поле 'Протокол' є для запису, і в ньому можна вказати власний протокол. За замовчуванням агент RMI JVM використовує протокол RMI для підключення до агента JDK JMX. Агент, запущений на попередньому етапі, відноситься до такого ж типу.

    В даному випадку необхідно використовувати вузол і порт за замовчуванням, так як агент прослуховує локальний порт localhost: тисячі дев'яносто дев'ять. Поле 'Шлях URL' доступно тільки для читання і відображає повний шлях для агента RMI JVM. Дані в поле 'Шлях URL' автоматично оновлюються при зміні значень вузла і порту.

  • Переконайтеся, що вибрано 'аутентифицироваться підключення' і 'Створити приклад коду для аутентифицированного підключення'. Натисніть 'Готово'.
    Розробка диспетчера java management extensions (jmx) і підключення до віддаленого агенту jmx

    Підключення до агента не аутентифицироваться, так як при запуску агента не надавалася конфігурація аутентифікації.

    запуск диспетчера

    У цій вправі показано, як запускати диспетчер і виявляти компоненти MBean.

    Також можна натиснути правою кнопкою миші вузол проекту JMXAnagramManager у вікні 'Проекти' і вибрати 'Виконати'.

    При виборі команди 'Виконати' додаток JMXAnagramManager запускається, підключається до віддаленого агенту, відображає імена виявлених компонентів MBean у вікні 'Результати' і закриває підключення:

    Проект компілюється і запускається диспетчер. Виявлені імена ObejctNames відображаються у вікні 'Результати'. Як бачите, у вікні відображається ім'я компонента MBean AnagramsStats і імена компонентів MBean віртуальної машини Java. Всі стандартні компоненти MBean віртуальної машини Java знаходяться в домені JMX java.lang.

    При запуску проекту JMXAnagramManager у вікні 'Результати' в NetBeans повинна відображатися наступна інформація:

    Готово! Відмінна робота!
    Ми сподіваємося, що це практичне керівництво було для вас корисно і ви отримали необхідні навички розробки диспетчерів для доступу до інформації, експортованої засобами JMX.