Расширения JMX: различия между версиями

Материал из Документация Ключ-АСТРОМ
Строка 55: Строка 55:
== Настройка вашего расширения ==
== Настройка вашего расширения ==
Расширения Ключ-АСТРОМ JMX имеют широкие возможности настройки, выходящие за рамки возможностей редактора. Вы можете скачать свое расширение и отредактировать его файл JSON, в котором описываются ваши метрики JMX и то, как вы хотите их отображать. Справку и примеры см. в разделе «Настройка плагинов JMX» .
Расширения Ключ-АСТРОМ JMX имеют широкие возможности настройки, выходящие за рамки возможностей редактора. Вы можете скачать свое расширение и отредактировать его файл JSON, в котором описываются ваши метрики JMX и то, как вы хотите их отображать. Справку и примеры см. в разделе «Настройка плагинов JMX» .
== Просмотр метрик JMX в Ключ-АСТРОМ ==
Метрики JMX доступны для всех процессов на основе Java, контролируемых ЕдинымАгентом.
После загрузки вашего расширения Ключ-АСТРОМ автоматически начинает запрашивать определенные метрики для всех процессов Java. Чтобы найти метрики, перейдите на соответствующую страницу процесса и нажмите «Подробнее» .
Например, для расширения с именем <code>HornetQ</code>перейдите к процессу, который вы выбрали при создании расширения, нажмите « Дополнительные сведения» , а затем выберите вкладку HornetQ , имя которой автоматически соответствует имени расширения. Там вы найдете все определенные метрики.
''Не видите определенный показатель?''
''Мониторинг JMX очень динамичен. Если определенная метрика не существует в вашей JVM, это не ошибка — метрика просто недоступна.''
== Пользовательские метрики расширения JMX/PMI ==
Вы можете заметить, что количество метрик в <code>plugin.json</code>файле вашего расширения JMX/PMI отличается от количества выставленных счетов специальных метрик. Это связано с тем, что расширения JMX/PMI предоставляют «разделения», которые можно использовать для определения дополнительных измерений для сообщаемых показателей. Для каждого значения выбранного свойства во время выполнения создается отдельная метрика временного ряда. Фактическое количество метрик таймсерий зависит от количества различных значений выбранного свойства.
В следующем примере показано, как определить метрику, которая предоставляет несколько временных рядов с одной метрикой:
<code>"metrics": [
  {
    "timeseries": {
      "key": "XY.Size",
      "unit": "Count",
      "displayname": "Queue Consumer Count",
      "dimensions": [
        "rx_pid",
        "name"
      ]
    }
    "source": {
      "domain": "com.sample",
      "keyProperties": {
        "type": "XY",
        "name": "*"
      },
      "attribute": "Size",
      "splitting": {
        "name": "name",
        "type": "keyProperty",
        "keyProperty": "name"
      }
    }
  }
]</code>
В этом примере MBeans <code>com.sample:type=XY,name=A</code>и <code>com.sample:type=XY,name=B</code>приведет к получению двух метрик временных рядов ( <code>A</code>и <code>B</code>).
Поскольку такие значения обычно заранее не известны и могут быть изменены, это может привести к неожиданно большому количеству потребляемых специальных метрик . Если значения свойства известны заранее или интерес представляют только некоторые значения, мы рекомендуем указать одну метрику для каждого значения и не использовать разделение.
== Ограничение метрик для расширения JMX ==
Для каждого расширения JMX может быть не более <code>5,000</code>метрик. Это ограничение необходимо для предотвращения перегрузки системы мониторинга неэффективными или перегруженными метриками расширениями.

Версия 15:50, 26 сентября 2023

JMX ( Java Management Extensions ) идеально подходит для мониторинга приложений, созданных с использованием Java. С помощью Ключ-АСТРОМ вы можете отслеживать любую метрику в вашей JVM, которая предоставляется через MBean.

Режим мониторинга инфраструктуры

Расширения JMX и PMI также доступны в режиме мониторинга инфраструктуры. Их можно использовать для мониторинга любого компонента инфраструктуры и службы поддержки, написанных на Java, и получать отчеты обо всех собранных показателях с помощью Ключ-АСТРОМ.

Создайте расширение JMX

  1. Войдите в Ключ-АСТРОМ, выберите «Настройки » > «Мониторинг » > «Отслеживаемые технологии» и нажмите «Добавить мониторинг новой технологии ». Из четырех доступных вариантов один — Monitor Java или технологии на базе WebSphere . Нажмите «Добавить расширение JMX/PMI ».
  2. Нажмите «Использовать редактор расширений JMX/PMI ».
  3. Введите имя расширения. Вы можете использовать только буквы A-Z, a-z, цифры 0-9или -/_.
  4. Добавьте источник метрик.
  • Выберите одну из доступных технологий.
  • В зависимости от вашего выбора редактор предложит процесс Java в качестве источника ваших показателей. Это сужает список доступных модулей MBeans или PMI, которые вы будете использовать на следующем шаге. Технология, лежащая в основе этого процесса, определяет, будете ли вы просматривать JMX MBeans или модули PMI. Нажмите «Добавить источник метрик» , чтобы использовать предложенный источник. Нажмите , чтобы выбрать другой процесс. При его выборе вы можете сузить список доступных процессов, выбрав конкретный хост или Зону управления.

Выбор процесса, хоста или зоны управления не ограничивает область мониторинга расширения. Расширения JMX/PMI контролируют все процессы Java, доступные ЕдиномуАгенту. Метрика, определенная для того же MBean и атрибута, будет также доступна в других процессах Java в вашем приложении, что может быстро исчерпать ваш собственный лимит метрики.

Вы также можете выбрать отдельные хосты, на которых будет запускаться новое расширение JMX, вместо того, чтобы запускать его глобально по всей вашей среде.

  1. Сразу после добавления расширения JMX перейдите в «Настройки» > «Отслеживаемые технологии » > вкладка «Пользовательские расширения» и отключите его глобально.
  2. Перейдите на отдельные страницы хоста, откройте настройки хоста, найдите расширение JMX и включите его.

5. Когда список метрик будет загружен, нажмите кнопку «Добавить метрику» , чтобы начать создание расширения.

Домен

Выберите домен.

Выберите ключевые свойства

Ключевые свойства фильтруют список доступных MBean-компонентов. Обратите внимание, что значения свойств могут содержать подстановочные знаки. Выберите «Точное соответствие» , чтобы фильтровать список MBeans только для записей, соответствующих точным значениям ключевых свойств.

Выберите MBean

Выберите один MBean из списка или оставьте параметр «Все соответствующие MBean» . Если сопоставлено более одного MBean, это приведет к агрегированию атрибутов всех совпадающих MBean в одну метрику. Ниже вы определите тип агрегации.

Выберите атрибут

Атрибуты, доступные в списке, являются только числовыми. Чтобы просмотреть другие атрибуты, например атрибуты типа String, выберите «Включить нечисловые атрибуты» . Обратите внимание, что выбранные атрибуты должны быть разборчивыми для двойного или логического типа. В противном случае ЕдиныйАгент Ключ-АСТРОМ не будет собирать данные по такой метрике.

Отображаемое имя

Вы можете определить собственное отображаемое имя для метрики.

Единица

Выберите метрическую единицу измерения.

Агрегация

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

Расчет

Дельта вычисляет изменение значений данного атрибута. Скорость вычисляет скорость изменений в секунду. Если вы выберете оба варианта, вы сможете преобразовать абсолютный атрибут (например, количество запросов) в скорость (например, количество запросов в секунду). Значение = атрибут/интервал запроса.

Создание расширения PMI

Создание расширения PMI очень похоже на создание расширения JMX. Модуль PMI преобразует в JMX Mbean, а статистику — в атрибуты. Все остальные настройки ведут себя соответственно.

Сохранение расширения

После добавления метрики вы по-прежнему можете редактировать или удалять ее определение. Вам необходимо нажать кнопку «Сохранить» , чтобы зарегистрировать расширение и начать сбор данных из всех процессов Java, содержащих определенные MBean-компоненты. После сохранения расширения вы не сможете редактировать или удалять метрики, поскольку таким образом мы сможем обеспечить непрерывность ваших данных. Вы по-прежнему можете добавлять новые показатели. Однако на этот раз вы не сможете выбрать базовый процесс Java, поскольку вы будете использовать процесс, в котором расширение уже развернуто.

Настройка вашего расширения

Расширения Ключ-АСТРОМ JMX имеют широкие возможности настройки, выходящие за рамки возможностей редактора. Вы можете скачать свое расширение и отредактировать его файл JSON, в котором описываются ваши метрики JMX и то, как вы хотите их отображать. Справку и примеры см. в разделе «Настройка плагинов JMX» .

Просмотр метрик JMX в Ключ-АСТРОМ

Метрики JMX доступны для всех процессов на основе Java, контролируемых ЕдинымАгентом.

После загрузки вашего расширения Ключ-АСТРОМ автоматически начинает запрашивать определенные метрики для всех процессов Java. Чтобы найти метрики, перейдите на соответствующую страницу процесса и нажмите «Подробнее» .

Например, для расширения с именем HornetQперейдите к процессу, который вы выбрали при создании расширения, нажмите « Дополнительные сведения» , а затем выберите вкладку HornetQ , имя которой автоматически соответствует имени расширения. Там вы найдете все определенные метрики.

Не видите определенный показатель?

Мониторинг JMX очень динамичен. Если определенная метрика не существует в вашей JVM, это не ошибка — метрика просто недоступна.

Пользовательские метрики расширения JMX/PMI

Вы можете заметить, что количество метрик в plugin.jsonфайле вашего расширения JMX/PMI отличается от количества выставленных счетов специальных метрик. Это связано с тем, что расширения JMX/PMI предоставляют «разделения», которые можно использовать для определения дополнительных измерений для сообщаемых показателей. Для каждого значения выбранного свойства во время выполнения создается отдельная метрика временного ряда. Фактическое количество метрик таймсерий зависит от количества различных значений выбранного свойства.

В следующем примере показано, как определить метрику, которая предоставляет несколько временных рядов с одной метрикой:

"metrics": [
  {
    "timeseries": {
      "key": "XY.Size",
      "unit": "Count",
      "displayname": "Queue Consumer Count",
      "dimensions": [
        "rx_pid",
        "name"
      ]
    }
    "source": {
      "domain": "com.sample",
      "keyProperties": {
        "type": "XY",
        "name": "*"
      },
      "attribute": "Size",
      "splitting": {
        "name": "name",
        "type": "keyProperty",
        "keyProperty": "name"
      }
    }
  }
]

В этом примере MBeans com.sample:type=XY,name=Aи com.sample:type=XY,name=Bприведет к получению двух метрик временных рядов ( Aи B).

Поскольку такие значения обычно заранее не известны и могут быть изменены, это может привести к неожиданно большому количеству потребляемых специальных метрик . Если значения свойства известны заранее или интерес представляют только некоторые значения, мы рекомендуем указать одну метрику для каждого значения и не использовать разделение.

Ограничение метрик для расширения JMX

Для каждого расширения JMX может быть не более 5,000метрик. Это ограничение необходимо для предотвращения перегрузки системы мониторинга неэффективными или перегруженными метриками расширениями.