JMX (java расширения для сетевого управления)

JMX драйвер устройства позволяет SberMobile Serverу взаимодействовать с Java-приложениями и сервером приложений, используя протокол Java расширений для сетевого управления (JMX).

Драйвер выполняет следующие функции:

  • Выполнение запросов MBean.

Запросы mbean

Запросы MBean повзоляют выбрать несколько MBeans одинакового формата/типа. Каждый запрос выводит результат в таблице, которая в своих колонках показывает все свойства выбранных MBeans, по одному экземпляру MBean в каждой строке.

Синтаксис запроса mbean

Текст запроса состоит из двух частей, домена и ключевых свойств, разделенных символом двоеточия (:).

Домен - это строка символов, не включающая двоеточие (:). Она может включать символ подстановки звездочка (*) или знак вопроса (?). Звездочка соответствует любой последовательности из нуля или более символов, а вопросительный знак соответствует любому одному символу. Если домен является пустым, то он будет заменен в некоторых случаях доменом по умолчанию MBean-сервера.

Ключевые свойства - это неупорядоченный запятой набор ключей и соответствующие значения. Каждый ключ - это непустая строка символов, которая может не содержать символы запятая (,), равенство (=), двоеточие, звездочку или вопросительный знак. Тот же ключ может не произойти дважды в данном запросе.

Список ключевых свойств может содержать один элемент звездочка (*), что означает, что MBeans, выбранный запросом, может содержать любое количество других (неуказанных) свойств.

Пример: java.lang:type=GarbageCollector,*

Это запрос MBean представляет список всех MBeans в домене java.lang, у которых есть свойство type, эти значения равны GarbageCollector. Такие MBeans могут иметь любое количество других свойств с любыми значениями.

Каждое значение, связанное с ключом, является строкой символов как без кавычек, так и в кавычках.

  • Значение без кавычек - это возможная пустая строка символов, которые могут не содержать символов запятая, равно, двоеточие, кавычки, звездочка или знак вопроса.
  • Значение в кавычках состоит из кавычек ("), затем возможной пустой строки символов с последющими закрывающими кавычками. Внутри строки символов косая черта влево () имеет особое значение. Она должна сопровождаться одним из следующих символов:
    • Вторая косая черта влево. Вторая косая черта влево не имеет особого смысла, и два символа представляют единую косую черту влево.
    • Символ 'n'. Два символа представляют собой перевод строки ('n').
    • Кавычки. Два символа представляют собой кавычки и не разрывают указанное значение. Закрывающие кавычки в конце должны присутствовать для оформления допустимости значения.
    • Знак вопроса (?) или звездочка (*). Эти два символа представляют собой знак вопроса или звездочку соответственно.

Ещё примеры запросов MBean:

*:type=Foo,name=Bar соответствует именам домена, который имеет определенный набор ключей type=Foo,name=Bar.

d:type=Foo,name=Bar,* соответствуют именам домена d, который имеет ключи type=Foo,name=Bar, плюс ноль и другие ключи.

*:type=Foo,name=Bar,* соответствуют именам доменов, которые имею ключи type=Foo,name=Bar,плюс ноль и другие ключи.

d:type=F?o,name=Bar соответствует, например, d:type=Foo,name=Bar и d:type=Fro,name=Bar.

d:type=F*o,name=Bar соответствует, например, d:type=Fo,name=Bar и d:type=Frodo,name=Bar.

d:type=Foo,name="B*" соответствует, например, d:type=Foo,name="Bling". Знаки подстановки распознаются даже внутри кавычек и, как другие особые символы, могут быть отделены при помощи .

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

Пробелы не имеют особого значения в запросе MBean. Например, строка домена key1 = value1 , key2 = value2 представляет запрос с двумя ключами. Название каждого ключа содержит шесть символов, из которых первый и последний - пробелы. Значение, соответствующее ключу "key1" также начинается и заканчивается пробелом.

Никакая часть запроса не может содержать символ новой строки ('n'), будь то домен, ключ или значение, в кавычках или без. Символ новой строки может быть представлен значением в кавычках с последовательностью n.

Информация о драйвере

ID плагина драйвера :

com.tibbo.linkserver.plugin.device.jmx

Общие настройки

Не определены.

Настройки уровня пользователя

Не определены.

Свойства device

Свойства подключения

Свойства подключения определяют, как SberMobile Server взаимодействует с JMX сервером. Данные настройки доступны, используя опцию Изменить свойства Device контекста Device. Доступны следующие свойства подключения:

Свойство

Описание

Хост

IP адрес имени хоста, к которому производится подключение.

Порт

Порт подключения.

Имя пользователя

Имя пользователя для аутентификации.

Пароль

Пароль для аутентификации.

URL сервиса пользователя

Пользовательский URL сервиса JMX. Сервис URL уже включает хост и порт, поэтому настройки Хост и Порт не используются, если он указан.

Игнорировать атрибуты с ошибками чтения

Если включено, переменные настроек не будут создаваться для атрибутов MBean, сообщающих об ошибке чтения во время анализа метаданных MBean  (например, первая попытка чтения атрибута).

Запросы mbean

Это свойство содержит таюлицу запросы MBean:

Свойство

Описание

Имя

Имя переменной настройки Device, содержащей результаты запроса.

Описание

Описание переменной настройки Device, содержащей результаты запроса.

Запрос

Текст запроса.

Активы device

Драйвер создает один корневой актив для каждого элемента MBean, предоставляемого MBean сервером.

Список MBeans, доступных на хосте JMX, может меняться в любое время. Чтобы запускать просмотр серверного списка MBeans (активы) при каждой синхронизации, поменяйте настройку Режим чтения метаданных учетной записи устройства JMX на Читать все.

Настройки device

JMX драйвер устройства создает одну переменную настройки Device для каждого атрибута каждого обнаруженного MBean. Данные переменные группируются по именам MBean и/или описаниям для упрощения навигации в базе данных.

Также одна переменная настройки создается при каждом запросе, определенном в таблице запросов MBean. Эта табличная переменная предлагает список MBeans, отобранных запросом.

Операции device

JMX драйвер устройства создает одну функцию контекста Device и действие для каждой операции каждого обнаруженного MBean. Данные действия группируются по именам MBean и/или описаниям для упрощения навигации в базе данных.

События device

JMX драйвер создает одно описание события устройства для каждого типа уведомлений каждого обнаруженного MBean. Драйвер автоматически добавляет приемник уведомлений для каждого уведомления и при его получении создает событие SberMobile Server.

Подключение

Драйвер переводит устройство в режим онлайн если:

  • TCP подключение к JMX хосту было успешно установлено.
  • Аутентификация и авторизация JMX RMI подключения выполнены успешно.

Синхронизация

Синхронизация между SberMobile Server и JMX хостом включает следующие действия:

  • Чтение списка доступных MBeans.
  • Чтение информации об атрибуте, предоставляемом каждым MBean.
  • Чтение информации об операции, предоставляемой каждым MBean.
  • Чтение информации об уведомлениях, предоставляемых каждым MBean.
  • Значения чтения/записи всех атрибутов.
  • Выполнение всех запросов MBean и чтение атрибутов MBeans, соответствующих этим запросам.
  • Подписка на уведомления.