Метрики

Подраздел Настройки  Метрики содержит информацию о добавленных пользователем и системных метриках (метрики, собираемые экспортерами в необработанном виде, поставляемые вместе с Визионом по умолчанию).

rp 333

Список содержит следующую информацию о метриках:

  • Имя — системное имя метрики, задаётся для настроек других связанных сущностей, например, правил оповещений;

  • Описание — описание метрики, заданное пользователем;

  • Тип — тип метрики в зависимости от поставки (из дистрибутива или создана пользователем).

Обзор метрики

Для вызова формы «Обзор метрики» нужно нажать на строку в таблице «Список метрик».

rp 333.1 1

В обзоре метрики представлена информация о метрике.

Добавление пользовательской метрики

Добавление пользовательской метрики на основе "PromQL"

Для добавления пользовательской метрики необходимо нажать кнопку Добавить — появится форма «Добавление метрики».

rp 3332 1

Необходимо выбрать тип метрики "PromQL" и заполнить поля:

  • Имя — системное имя метрики:

    • Поле обязательное для заполнения.

    • Длина от 5 до 100 символов.

    • Допустимые символы: буквы английского алфавита в верхнем и нижнем регистрах, цифры, символ нижнего подчеркивания.

    • Имя метрики должно быть уникальным.

    • Имена пользовательских метрик должны начинаться с префикса usr_.

  • Детальное описание — детальное описание метрики, заданное пользователем:

    • Поле обязательное для заполнения.

    • Длина от 3 до 500 любых символов.

  • Тип объекта — выбор типа(ов) объекта мониторинга. Этот выбор будет определять для какого объекта в объектной модели на вкладке "Метрики" будет отображаться данная метрика.

  • Выражение PromQL — валидный PromQL запрос, заданный пользователем для дальнейшего использования.

При нажатии кнопки Добавить метрика будет добавлена, при нажатии кнопки Отмена все внесённые изменения будут потеряны.

Добавление пользовательской метрики на основе "LogsQL"

Перед тем, как создавать метрики на основе "LogsQL", предварительно необходимо настроить сбор логов. Информация по настройке сбора логов описана в Руководстве администратора.

Для добавления пользовательской метрики необходимо нажать кнопку Добавить — появится форма «Добавление метрики».

rp 3332 5

Необходимо выбрать тип метрики "LogsQL" и заполнить поля:

  • Имя — системное имя метрики:

    • Поле обязательное для заполнения.

    • Длина от 5 до 100 символов.

    • Допустимые символы: буквы английского алфавита в верхнем и нижнем регистрах, цифры, символ нижнего подчеркивания.

    • Имя метрики должно быть уникальным.

    • Имена пользовательских метрик должны начинаться с префикса usr_.

  • Детальное описание — детальное описание метрики, заданное пользователем:

    • Поле обязательное для заполнения.

    • Длина от 3 до 500 любых символов.

  • Тип объекта — выбор типа(ов) объекта мониторинга. Этот выбор будет определять для какого объекта в объектной модели на вкладке "Метрики" будет отображаться данная метрика.

  • Выражение — валидный LogsQL запрос, заданный пользователем для дальнейшего использования.

При нажатии кнопки Добавить метрика будет добавлена, при нажатии кнопки Отмена все внесённые изменения будут потеряны.

Добавление пользовательской метрики на основе "SQL скрипт"

Пользовательские метрики на основе "SQL скрипт" можно применить на множестве узлов (серверов).

Для добавления пользовательской метрики необходимо нажать кнопку Добавить и после появления окна добавления метрики выбрать тип метрики «SQL скрипт».

rp 3332 2

Поля "Имя", "Детальное описание", "Тип объекта" заполняются так же, как в случае метрики на основе PromQL.

Поле «Выражение» содержит SQL-запрос, состав которого определяется пользователем. В этом запросе описывается метаинформация о БД, необходимая пользователю для хранения в формате временного ряда.

SQL-запрос чувствителен к отступам.
Пример SQL-запроса:
    type: counter
    help: 'Data base role'
    values: [role]
    query: |
      select pg_is_in_recovery()::int as role;

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

  • type — тип метрики;

  • help — описание;

  • values — имя таблицы;

  • query — тело запроса.

В поле «Серверы» окна "Добавление метрики" отображаются узлы, входящие в Контур. Они могут иметь следующие состояния:

  • Узел доступен для выбора - плагин установлен и с ним есть связь (имя сервера чёрное).

  • Узел не доступен для выбора — не установлен плагин, либо связь с ним утеряна (имя сервера серое).

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

При нажатии кнопки Добавить метрика будет добавлена, при нажатии кнопки Отмена все внесённые изменения будут потеряны.

SQL-метрику можно добавить не только на сервер, но и на ВМ, при условии, что на ВМ установлен sql_exporter.

Добавление метрики на основе SQL-выражения доступно только пользователям, которым назначены роли администратора мониторинга (vsn_config) и администратора объектной модели (obj_model).

Добавление пользовательской метрики на основе "Bash скрипт"

Особенность пользовательской метрики на основе "Bash скрипт" заключается в том, что выражение, прописанное в соответствующем поле, можно применить сразу на множество узлов (серверов).

Для добавления пользовательской метрики необходимо нажать кнопку Добавить и после появления окна добавления метрики выбрать тип метрики «Bash скрипт».

rp 3332 3

Поля "Имя", "Детальное описание", "Тип объекта" заполняются также как в случае метрики на основе PromQL выражения.

Поле «Выражение» содержит YAML-структуру, состав которой определяется пользователем. В этой структуре описываются правила, по которым формируются метки и значения временных рядов. В рамках одной метрики возможно описание нескольких временных рядов. У одного временного ряда может быть задано несколько меток. Возможно определить метки, которые будут применены ко всем временным рядам (в рамках данной метрики) или только к конкретному временному ряду. Метки описываются в формате название: значение.

Описание тегов, используемых в YAML-структуре:

Тег Описание

labels

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

static_labels

Раздел для статических меток - строк

series

Раздел для описания временных рядов

- value

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

- static_value

Статическое значение - число

Необходимо учитывать, что YAML-структура чувствительна к отступам.

Пример YAML-структуры:

labels:
  user: whoami
series:
  - value: ps -ax | wc | awk '{print $1}'
    static_labels:
      label1: lab1
  - static_value: 10
    static_labels:
      label1: lab2

В данном примере в разделе labels определена метка user, которая будет присутствовать у всех временных рядов данной метрики. Значением метки будет результат выполнения команды whoami (в нашем случае "vision_bash_exporter" — логин пользователя, от имени которого запускается bash-команда). В разделе series описаны два временных ряда. Значения первого временного ряда будут формироваться как результат выполнения команды:

ps -ax | wc | awk '{print $1}'

Значения второго временного ряда — число 10. Для первого временного ряда определена статическая метка label1 со значением lab1, а для второго временного ряда статическая метка label1 со значением lab2.

В поле «Серверы» окна "Добавление метрики" отображаются узлы, входящие в Контур. Они могут иметь следующие состояния:

  • Узел доступен для выбора - плагин установлен и с ним есть связь (имя сервера чёрное).

  • Узел не доступен для выбора — не установлен плагин, либо связь с ним утеряна (имя сервера серое).

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

При нажатии кнопки Добавить метрика будет добавлена, при нажатии кнопки Отмена все внесённые изменения будут потеряны.

Добавление метрики на основе bash выражения доступно только пользователям, которым назначены роли администратора мониторинга (vsn_config) и администратора объектной модели (obj_model).

Работа с контекстным меню для метрики

Для вызова контекстного меню нужно нажать кнопку , которая находится в списке метрик, после этого откроется контекстное меню для работы с метриками. В случае, если метрика поставлена при развёртывании дистрибутива (тип: Системная), действия по таким метрикам будут недоступны. Для метрик, созданных пользователем (тип: Пользовательская), будут доступны действия:

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

Редактирование метрики

При нажатии на пункт «Редактировать» открывается форма «Редактирование метрики».

rp 3334

Внести необходимые изменения и нажать кнопку Сохранить.

При редактировании метрик на основе bash-выражения снятие галочки с узла в настройках метрики будет означать, что данная метрика перестанет собираться с данного узла. На сбор других метрик, определённых для данного узла, это не повлияет.

Редактирование метрик на основе SQL-выражения или bash-выражения доступно только пользователям, которым назначены роли администратора мониторинга (vsn_config) и администратора объектной модели (obj_model).

Удаление метрики

Для удаления метрики нужно нажать на пункт «Удалить», в открывшейся форме подтвердить удаление.

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

Для метрик на основе bash-выражения снятие галочки со всех узлов в настройках метрики будет означать, что данная метрика перестанет собираться для всех узлов, при этом сама метрика не будет удалена.

Удаление метрик на основе SQL-выражения или bash-выражения доступно только пользователям, которым назначены роли администратора мониторинга (vsn_config) и администратора объектной модели (obj_model).

Диагностика полноты сбора данных метрики

В контекстном меню для каждой метрики доступна функция диагностики полноты сбора данных. При выборе пункта «Диагностика» открывается таблица, состоящая из следующих полей:

  • Временной ряд;

  • Значение (числовое значение, отражающее последнее значение временного ряда);

  • Статус.

um22

Поле «Статус» отражает полноту сбора данных в соответствии со следующей логикой:

  • Красный — данные за установленный период отсутствуют.

  • Жёлтый — во временном ряде отсутствует более 10% значений от общего числа значений, которые должны находиться в нём за установленный период.

  • Зелёный — временной ряд содержит 100% значений, которые должны находиться в нём за установленный период. Установленный период — 2 периода скрепинга.

Настройка сбора метрик sql_exporter и bash_exporter

Для пользовательских метрик, собираемых sql_exporter и bash_exporter, доступна функция остановки сбора. Чтобы остановить сбор метрики, не удаляя саму метрику, следует выполнить следующие действия:

  1. Зайти во вкладку «Плагины» некоторого ПАК в объектной модели.

  2. В контекстном меню sql_exporter или bash_exporter выбрать пункт «Настройка сбора метрик».

  3. С помощью чекбоксов отключить или запустить сбор метрик.

  4. Нажать кнопку Сохранить.

    Кнопка Отмена закроет окно «Настройка сбора метрик».

rp 3337 1

Экспорт и импорт метрик

Функции экспорта и импорта метрик доступны пользователю с ролью "Администратор мониторинга".

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

Экспорт метрик

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

  1. На странице Настройки  Метрики выберите метрики, которые необходимо экспортировать.

    Экспортировать возможно только метрики с типом Пользовательская.
  2. В правом верхнем углу нажмите кнопку экспорта (стрелка вверх).

    Кнопка экспорта неактивна, пока не выбраны метрики.

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

  4. Нажмите кнопку Экспортировать.

Импорт метрик

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

  1. На странице Настройки  Метрики в правом верхнем углу нажмите кнопку импорта (стрелка вниз).

  2. В диалоговом окне Импорт метрик и правил оповещения загрузите файл с метриками, которые необходимо импортировать, и нажмите кнопку Продолжить.

    Загружаемый файл должен быть в формате .yml и его размер не должен превышать 10 МБ.
  3. В окне Импорт метрик и правил оповещения выберите метрики, которые необходимо импортировать, и нажмите кнопку Проверить и импортировать (она становится активной после выбора метрик).

    Если при проверке не возникло проблем, окно Импорт метрик и правил оповещения будет закрыто, появится сообщение "Импорт выполнен успешно".

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