Правила порогов
В данном разделе документации предоставлена информация о работе с правилами обработки метрик и генерации новых объектов в системе Monq - порогов.
Порог метрики (англ. threshold) - это предельное значение, которое устанавливается для определенной метрики с целью определения критического состояния метрики. Когда значение метрики превышает или достигает установленного порога, это может сигнализировать о проблеме, ошибке, перегрузке или другом важном событии, требующем внимания или реагирования.
Генерация событий по порогам из метрик с целью дальнейшего прохождения по пайплайну обработки событий дает возможность полноценной обработки метрик внутри Monq.
Пороги генерируются из собираемых метрик в специальном процессоре Monq - mcs-thresholds-service, который запускает правила расчета с определенной периодичностью. Результатом работы процессора могут быть: открытие нового порога, закрытие существующего порога и подтверждение порога.
В целях достижения требуемой производительности и возможности расширения инсталляции правила автоматически распределяются между активными экземплярами сервисов обучения моделей и расчёта порогов.
В случае открытия или закрытия порога на выходе генерируются специальные события, которые далее поступают в основной тракт обработки событий Monq.
Привязка генерируемых порогов к конфигурационным единицам (КЕ) выполняется непосредственно в правиле порогов в блоке Связь с CMDB и осуществляется одним из трёх способов: по метке ID КЕ, по набору ключевых атрибутов или через сценарий автоматизации.
Порог, аналогично сигналу, представляет собой короткоживущий объект, у которого есть время начала и время завершения.
Установка подходящих порогов метрик является важным аспектом мониторинга и управления системами. Они должны быть настроены в соответствии с требованиями и характеристиками конкретной системы или приложения. Неправильно установленные пороги метрик могут приводить к ложным предупреждениям или недостаточному обнаружению проблем, поэтому требуется внимательное исследование и настройка для достижения оптимальных результатов.
Обзор экрана
Экран управления правилами порогов доступен из основного меню Анализ и обработка → Правила порогов

регулируется ролевой моделью: права зависят от назначенной пользователю роли
На экране представлены следующие данные и элементы управления:
- таблица с созданными правилами порогов с возможностью открыть карточку любого из них
- поисковая строка
- рубрикатор для фильтрации правил порогов
- кнопка + Создать правило
При помощи рубрикатора пользователи могут фильтровать правила порогов по следующим свойствам:
- Состояние - поможет показать только включенные или только отключенные правила порогов
- Статус - отфильтрует правила порогов по их статусу
- Поток данных - покажет только те правила порогов, которые связаны с выбранным потоком данных
- Теги - фильтрация по назначенным тегам
Таблица с правилами порогов отображает основную информацию о созданных правилах порогов в контексте рабочей группы:
- Статус правила порогов:
- Неизвестно (серый) - правило не имеет запусков
- Успешно (зеленый) - правило запускалось и последний его запуск завершился без ошибок
- Ошибка (красный) - правило запускалось и последний его запуск завершился с ошибкой
- Название правила порогов
- Описание (при наличии)
- Состояние правила (Запущено/ Остановлено)
- Связанный поток данных:
- Иконка
- Название
- Счетчик количества потоков с возможностью перехода к настройке потока данных выбранного потока данных
- Индикация остановленного потока (если поток остановлен)
- Иконка ошибки при условии отсутствия потока данных, если он был удален
- Частоту расчета - интервал частоты расчета правила порога
- Дата и время внесения последнего изменения в правиле порога
- Список аннотаций - список дополнительных полей присвоенных при создании правила порога (ключ/значение)
- Список тегов (цвет/название)
Список правил порогов загружается с использованием механизма "ленивой загрузки" — данные отображаются порциями по мере прокрутки списка.
Общее количество доступных правил порогов в разделе отображается в виде счётчика в правом верхнем углу над списком.
Из списка правил порогов пользователь может открыть настройки правила, кликнув по нему в списке. В верхней панели правила доступны действия:
- скопировать ID правила
- открыть в новой вкладке браузера
- скопировать ссылку на правило
- изменить размер модального окна правила
- закрыть карточку правила
- запустить / остановить правило
- воспользоваться контекстным меню с дополнительными возможностями
- просмотреть настройки правила
Массовые действия
Работая с экраном правил порогов доступно выполнение массовых действий по удалению, запуску/остановке и экспорта правил порогов.

Массовые действия доступны при выборе одного и более правила порогов.
При массовом удалении правил порогов пороги перестанут формироваться. Это затронет все связанные процессы.
Дополнительные действия
В меню дополнительных действий доступны операции:
- Запустить / остановить правило
- Экспортировать правило
- Удалить правило

Создание правила порога
Для создания нового правила расчета порогов нажмите кнопку + Создать правило в правом верхнем углу экрана управления правилами порогов.
Заполните форму создания правила:

- Владелец - рабочая группа, которой принадлежит правило расчета порога
- Название правила - должно быть уникальным в рамках рабочей группы
- Описание (опционально)
После создания правила расчета порогов его необходимо настроить:
Основные настройки

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

Автозакрытие
Время до автоматического закрытия порога, если не было подтверждающего события. Отсчет начинается с момента открытия или подтверждения порога.
Название порога
Допускается использование макросов: указываются в {{двойных фигурных скобках}}:
Rule.Id- ID правилаRule.Name- название правилаRule.Description- описание правилаRule.CreatedAt- дата создания правила порогаRule.FilterQuery- данные из поля 'Запрос'Rule.CheckIntervalSeconds- интервал запроса метрик в секундахRule.EvaluationWindowSeconds- значение поля 'Окно вычисления' в секундахRule.AutoCloseTimeSeconds- значение поля 'Автозакрытие'Rule.AggregationFunction- указанная для правила функция агрегацииRule.StreamIds- выбранные потоки для правилаRule.Conditions- список настроенных условийRule.OwnerWorkGroupId- ID РГ-владельца правила порогаRule.OwnerWorkGroupName- название РГ-владельца порогаCondition.Function- указанная для сработавшего правила функция сравненияCondition.Value- с каким значением производилось сравнениеCondition.Level- сработавший уровень условияCondition.LevelNumber- цифровое значение уровняMetric.Value- значение метрики при расчете порогаMetric.Labels- метки метрикиMetric.Hash- уникальный хэш метрикиMetric.Name- название метрикиMetric.Labels.<название метки>- позволяет указать название метки метрики
По умолчанию это поле заполняется по шаблону:
[Имя правила]: [Имя метрики]; [Лейбл 1]; [Лейбл 2]
В данном блоке имеются дополнительные настройки:
- Описание правила
- Описание порога
- Аннотации

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

При внесении изменений в любые поля блока «Источник метрик» все текущие модели прогнозирования и адаптивного детектора удаляются, после чего запускается полное переобучение. Если включено прогнозирование и/или адаптивный детектор аномалий, при сохранении изменений отображается предупреждение с необходимостью подтверждения.
Потоки данных
Необходимо выбрать как минимум один поток данных - источник метрик. Для выбора доступны потоки данных с типом "Метрики" контекстной РГ + пошаренные.
Вычисление
Определяет способ преобразования результата запроса в числовое значение. Применяется для вычисления порога, построения прогнозов и обучения адаптивного детектора аномалий.
Last (Последнее)- для расчета будет использовано последнее значение вектораAverage (Среднее)- среднее значение вектораMax (Максимум)- максимальное значение вектораMin (Минимум)- минимальное значение вектораSum (Сумма)- суммирует все значения вектора
Период — задаётся числовым значением с выбором единицы измерения: мин, ч, дн.
Пример: Max за 10 мин — для расчёта берётся максимальное значение метрики за последние 10 минут.
Хэш
Набор меток, используемых для формирования хэша порога. Обеспечивает идентификацию порога, в том числе и при изменении меток временного ряда.
Это способ использования указанных меток для определения уникальности порога. Доступны следующие критерии:
-
По всем меткам (рекомендуемый критерий, заданный по умолчанию для всех правил)
-
По всем меткам, кроме указанных (риск коллизий) - перечисление меток в соответствующем поле
Эти метки также должны быть исключены из основного запроса правила
-
Только по указанным меткам (риск коллизий) - перечисление меток в соответствующем поле
СправкаПри изменении настроек правила формирования хэша допускается ситуация, при которой на экране порогов для одного порога будет отображаться несколько графиков, т.к. одинаковый хэш будет у нескольких метрик одновременно.
Запрос
Для указания запроса необходимо перейти к форме его редактирования.
Запрос значений метрики может быть сформирован двумя способами: с помощью Конструктора запросов (интерактивный выбор метрик и меток) или вручную на языке MetricsQL (PromQL) с помощью Строки запроса.
Пример ручного ввода:
aggregator_openapi_v2_regeneration_count{endpoint="https", instance="10.18.0.100:6443", job="apiserver"}
Чем более подробно указан набор меток, тем более точно будет производиться идентификация конкретного вектора. Например, если указать только название метрики: aggregator_openapi_v2_regeneration_count, запрос будет валиден, но вместо одного вектора придет набор из нескольких векторов.
Допускается ввод многострочного запроса. Для этого реализован перенос на новую строку нажатием Shift+Enter.
Строка для запроса работает одновременно и в режиме Поиска по существующим в БД метрикам.

Для просмотра временных рядов, соответствующих настроенным условиям, запрос можно выполнить вручную, нажав кнопку Выполнить.
При необходимости внесения изменений в Запрос активного правила - Правило сначала нужно остановить и выбрать "Закрыть пороги". Если это не сделать, пороги будут создаваться как новые, не заменяя предыдущие. А старые останутся открытыми.
График временных рядов
При выполнении запроса, помимо меток и значений метрик, выводится полный график временных рядов.

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

Статический детектор аномалий
Статический детектор аномалий — это фиксированное правило, с помощью которого заранее устанавливаются верхняя и нижняя границы допустимых значений метрики. Всё, что выходит за эти границы, считается аномалией.
Инструментом для задания границ выступает Блок условий.
Ok.Чтобы создать Блок условий необходимо нажать на кнопку + Блок условий
При создании новый блок условий всегда добавляется с наивысшим приоритетом — то есть проверяется первым. Приоритет остальных блоков можно изменить, перетаскивая их в нужном порядке.
Для перехода к настройкам Блока условий необходимо выполнить по нему клик.

Для каждого блока условий отображается:
- Активное время, заданное по расписанию или дате.
- Уровни критичности и их значения (с цветовой индикацией):
FatalCriticalMajorWarningInfo
- График с метричным рядом
Доступные действия:
- изменение периода отображения временных рядов (по умолчанию — последние 24 часа)
- выполнить настройки активного времени:
- задать период действия блока через расписание (месяц, дни недели, дни месяца, тип дней, время, часовой пояс)
- задать диапазон дат
- выбрать интервал времени на графике с помощью выделения мышью
- включение / отключение отображения легенды
- задание условий для создания порогов (по умолчанию —
Оk)
После завершения всех настроек необходимо сохранить изменения — блок будет создан и настроен в соответствии с указанными параметрами.
Адаптивный детектор аномалий
Адаптивный детектор аномалий — это инструмент, который автоматически определяет нормальное поведение метрики на основе исторических данных и выявляет отклонения от него. В отличие от статического детектора, где границы задаются вручную, адаптивный строит их самостоятельно, подстраиваясь под изменения временного ряда.

При изменении внутренних настроек адаптивного детектора аномалий происходит внеплановое полное переобучение модели
Алгоритм
Метод расчёта — определяет способ построения границ нормы (бейзлайнов):
- IQR метод (по умолчанию) — классический метод на основе оценки межквартильного размаха. Устойчив к единичным выбросам.

- Перцентильный метод — прямое сравнение с заданным перцентилем. Поддерживает несколько уровней аномалий.

При выборе IQR-метода или перцентильного метода пороги рассчитываются автоматически без задания абсолютных значений. Расчёт выполняется с учётом всех настроек детектора, по результатам генерируются события подтверждения, изменения или закрытия порога.
Чувствительность — управляет шириной бейзлайна.
Чем выше установленное значение, тем шире границы нормы и тем меньше ложных срабатываний. Чем ниже — тем чувствительнее детектор и тем больше мелких отклонений он фиксирует. Диапазон: 0.00–5.00.
Уровни порога
Для каждого уровня настраивается условие срабатывания:
- значение больше верхней границы бейзлайна;
- значение внутри границ (обычно OK);
- значение меньше нижней границы бейзлайна.
Доступные уровни критичности:
- Fatal
- Critical
- Major
- Warning
- Info
- OK
Приоритетные границы:
- Верхняя приоритетная граница
- Нижняя приоритетная граница
Позволяют задать жёсткие абсолютные значения. Если значение временного ряда поднимается выше верхней границы или опускается ниже нижней, аномалия фиксируется немедленно, независимо от расчётного бейзлайна.

Недостаток данных
Определяет поведение детектора, когда исторических данных недостаточно для построения модели:
- Использовать коллективный бейзлайн — применяется бейзлайн на основе всех рядов правила.
- Установить уровень — задаётся уровень критичности, который будет присвоен при недостатке данных.

Расширенная настройка
Блок с расширенными настройками доступен при включенном адаптивном детекторе аномалий и позволяет управлять параметрами построения бейзлайна и обучения модели.

Бейзлайн
Актуальность бейзлайна — срок «жизни» бейзлайна с момента его последнего обновления.
Вид бейзлайна — определяет, на каких данных строится модель:
- Индивидуальный — бейзлайн строится исключительно на истории самого временного ряда.
- Групповой — бейзлайн строится по данным всех рядов в группе. Помогает выявить аномальные объекты, которые ведут себя не так, как остальные в группе.
При выборе группового вида становится доступно поле Разделители, в котором указываются метки для разбиения временных рядов на группы. Бейзлайн рассчитывается отдельно для каждой группы: при указании нескольких меток группа формируется по уникальной комбинации их значений. Если метки не выбраны, бейзлайн рассчитывается по всем временным рядам правила.
Стратегия построения
Глубина обучения — определяет возраст данных при полном обучении.
Минимальный размер обучающей выборки — критерий достаточности данных для формирования бейзлайна. Чем выше значение, тем меньше вероятность ложных срабатываний, но потребует больше времени для готовности.
Переобучение — частота полного обновления бейзлайна. Доступны два режима:
- По периоду — переобучение через заданный интервал (число + единица измерения, по умолчанию 7 дней).
- По расписанию — переобучение в заданные моменты времени.
При включенном переобучении модель адаптируется к текущим данным, исключая влияние устаревших значений. При выключенном бейзлайн строится по всем данным с момента инициализации — это даёт устойчивую картину для стабильных метрик, но при дрейфе может снижать чувствительность к изменениям.
Переобучение происходит для всех бейзлайнов в правиле одновременно.
Учёт контекста
Включает сегментацию обучающей выборки по контекстным признакам. Это позволяет строить отдельные бейзлайны для каждого сегмента, что повышает точность обнаружения аномалий на данных с выраженными циклическими паттернами.

Доступные параметры:
-
Учитывать время суток — разбиение по времени суток (например, двухчасовые интервалы):
- Почасовой — значения за тот же час суток (например, 02:00–02:59)
- Двухчасовой — разбиение суток на 12 двухчасовых интервалов с 00:00
- Четырёхчасовой — разбиение суток на 6 четырёхчасовых интервалов с 00:00
- Период дня (6 ч.) — деление на 4 периода: ночь (00:00–06:00), утро (06:00–12:00), день (12:00–18:00), вечер (18:00–24:00).
-
Учитывать день недели — разбиение по дням недели.
-
Учитывать производственный календарь — разбиение по типу дня (рабочий / выходной / праздник).
-
Часовой пояс — часовой пояс для сегментации (по умолчанию — пояс пользователя).
При выборе нескольких контекстных признаков данные разбиваются на более мелкие сегменты (например, только понедельник с 09:00 до 10:00). Минимальный размер обучающей выборки выполняется для каждого сегмента отдельно.
Настройки прогнозирования
Прогнозирование позволяет предсказывать поведение метрики на основе исторических данных. Модель обучается на результирующем ряде с частотой дискретизации, равной интервалу расчёта правила, а объём обучающей выборки определяется настройками прогноза (объём инициализации, компенсация потерь). Прогноз строится на заданное количество интервалов вперёд.

Горизонт прогноза
Включение функции прогнозирования позволяет настроить количество интервалов расчета вперед для прогноза. Чем больше горизонт прогноза, тем ниже точность.
Для ручного управления параметрами прогнозирования предусмотрен инструмент расширенной настройки, в котором пользователь может задать параметры прогноза. Для этого раскройте настройки "Расширенная настройка" в блоке Прогноз

Расширенная настройка даёт полный контроль над моделью прогнозирования: можно доверить подбор параметров Monq AI или задать их вручную под специфику метрики. Настройки линейного и сезонного прогноза позволяют адаптировать модель к разным типам временных рядов — от стабильных до волатильных и сезонных, а переобучение и фильтрация по меткам обеспечивают актуальность и точность прогноза для нужных порогов.
Расширенные настройки доступны при включенном прогнозировании и включают в себя:
- Актуальность модели - срок «жизни» модели с момента её последнего обновления.
- Линейный прогноз - параметры линейной составляющей прогноза:
- Объём инициализации — объём данных для старта (пропорционально горизонту прогноза). Большие значения повышают устойчивость прогноза, но откладывают его начало.
- Компенсация потерь — расширяет временное окно для сбора начальных данных, компенсируя пропуски в истории. Большие значения позволяют набрать нужное число точек, но могут захватить устаревшие данные.
- Сглаживание уровня — чувствительность к последним изменениям среднего значения. Высокое значение (≈0,7–1,0) — быстрая реакция на резкие скачки; низкое (≈0,1–0,3) — сглаживание шума, прогноз более инерционный.
- Затухание тренда — уменьшает влияние тренда на дальние прогнозы, делая их осторожнее. Значение 1.0 отключает затухание (классический линейный тренд);
0.9–0.95рекомендуется для горизонтов >10 шагов во избежание завышения.
- Сезонный прогноз - добавляет в модель сезонную составляющую:
- Сезонность — определяет, как учитывается сезонный паттерн.
- Объём инициализации — объём данных для старта (пропорционально сезонности). Большие значения повышают устойчивость прогноза, но откладывают его начало. Задаётся в интервалах (например, 2 интервала ≈ 0 дней).
- Компенсация потерь — аналогично линейному прогнозу: расширяет временное окно для сбора начальных данных, компенсируя пропуски в истории.
- Переобучение - частота полного обновления модели:
- По периоду — переобучение через заданный интервал.
- По расписанию — переобучение в заданные моменты времени.
- Область прогнозирования
- Фильтрация по меткам — дополнительный фильтр, чтобы прогноз строился только для определённых порогов.
Вычисление прогноза
При включённом прогнозировании и активном правиле порога система вычисляет прогнозные значения для временных рядов и их пороговых значений. Результаты сохраняются в СУБД, а при изменении статуса порога относительно прогноза в Автоматон отправляется соответствующее событие.
Прогнозирование комбинирует линейную и сезонную модели. Сезонная модель применяется, если Monq AI обнаружил сезонность в данных или если сезонность указана вручную. Во всех остальных случаях используется линейная модель.
Если данных для надёжного сезонного прогноза ещё недостаточно, применяется линейная модель — первые прогнозы появляются уже через 2–3 часа, а после накопления данных автоматически подключается сезонная модель.
Параметры моделей настраиваются автоматически сервисом Monq AI и корректируются по мере поступления новых данных.
Расчет адаптивных порогов для прогнозных значений
При включённом прогнозировании и адаптивном детекторе аномалий пороги рассчитываются не только для текущих значений временного ряда, но и для его прогнозных значений. Это позволяет заранее видеть, как изменится критичность метрики в будущем, без необходимости задавать абсолютные значения вручную.
Расчёт выполняется с учётом всех настроек адаптивного детектора и прогноза, результаты сохраняются в СУБД. Если прогнозируемый статус порога отличается от текущего, в Автоматон отправляется соответствующее событие.
Данные прогноза не используются для обучения и корректировки моделей адаптивных порогов.
Удаление моделей прогнозирования
Каждый час запускается процесс удаления невалидных моделей — моделей, у которых истёк срок жизни.
Настройки связи с CMDB
Связь с CMDB позволяет привязать генерируемые пороги к конкретному объекту инфраструктуры (например, серверу, базе данных или приложению). Это значит, что все аномалии и алерты будут привязаны не просто к метрике, а к конкретному оборудованию или сервису, что упрощает поиск причины проблемы и понимание, на что именно повлиял сбой.

По умолчанию автоматическая привязка выключена (выбран алгоритм Выключено). Для настройки блока CMDB необходимо выбрать один из алгоритмов привязки.
Алгоритмы привязки:
-
Выключено - автоматическая привязка отключена (по умолчанию).
-
По метке с ID КЕ — привязка по совпадению значения указанной метки метрики с ID КЕ.
-
По ключевым атрибутам — динамический поиск КЕ по заданным атрибутам.
-
Через сценарий автоматизации — гибкий механизм привязки с использованием сценариев автоматизации.
Выбор алгоритма позволяет адаптировать привязку под различные сценарии использования и структуру CMDB.
Совместимость со сценариями
Переключатель Совместимость со сценариями ThresholdProcessor (Monq 8) управляет тем, какие события генерируются при работе правила:
- Включен — при открытии/закрытии порога генерируется событие
OnThresholdEvent. СобытиеOnProcessedThresholdsEventне создаётся. - Выключен — генерируется событие
OnProcessedThresholdsEventпри открытии/закрытии порога и событиях прогноза.
По умолчанию опция выключена. Если привязка к CMDB недоступна по лицензии, генерируется событие OnProcessedThresholdsEvent.
Перед включением убедитесь, что вы не используете события типа OnProcessedThresholdsEvent (Monq 9) для генерации сигналов по порогам данного правила.
Алгоритм привязки по метке с ID КЕ
Привязка по метке с ID КЕ позволяет сопоставить порог с конфигурационной единицей на основе идентификатора, хранящегося в метрике.

Настройка:
-
Название метки метрики с ID КЕ — указывается ключ метрики, в котором хранится ID КЕ (по умолчанию
configItemId). -
Компонент и слот для типа КЕ — при необходимости для каждого типа КЕ указывается компонент и слот. Можно добавить несколько типов КЕ, а также удалить лишние.
Если соответствие (КЕ) не найдено:
- Без КЕ — оставляет поле привязки пустым, если соответствие не найдено (в
configItemIdзаписывается0). - Не найдено — подставляет специальное значение, указывающее, что поиск соответствия не дал результатов (в
configItemIdзаписывается-1).
Алгоритм привязки по ключевым атрибутам
Привязка по ключевым атрибутам позволяет сопоставить порог с конфигурационной единицей на основе набора атрибутов, однозначно идентифицирующих КЕ.

Настройка:
- Тип КЕ — добавляется кнопкой + Тип КЕ. Доступны типы пространства, для которых на типе КЕ заданы ключевые атрибуты. Доступен текстовый поиск по типу. Порядок типов КЕ можно менять перетаскиванием — проверка выполняется сверху вниз.
- Для дальнейшей настройки кликните по выбранному типу КЕ:
- Группа ключей — если на типе КЕ создано несколько групп ключей, их можно добавить в настройку или удалить. Также доступен переход к настройкам типа КЕ.
- Метка временного ряда — для каждого атрибута КЕ указывается соответствующая метка метрики. Доступны макросы.
- Привязка к компоненту и слоту:
- компонент и слот по умолчанию
- указать компонент и слот для размещения

Если значения меток соответствуют нескольким КЕ, система проверяет типы КЕ и наборы ключевых атрибутов по их приоритету, привязывает порог к первой найденной КЕ с полным совпадением набора и прекращает дальнейший поиск.
Если соответствие не найдено:
- «Без КЕ» — оставляет поле привязки пустым, если соответствие не найдено (в
configItemIdзаписывается0). Значение по умолчанию. - «Ошибка привязки» — подставляет специальное значение, указывающее, что поиск соответствия не дал результата (в
configItemIdзаписывается-1).
Алгоритм привязки через Сценарий автоматизации
Привязка через сценарий автоматизации позволяет сопоставить порог с конфигурационной единицей на основе пользовательской логики, реализованной в сценарии с типом ThresholdsToCmdbBinder.

Настройка:
- Сценарий автоматизации — выбирается из выпадающего списка доступных сценариев с типом
ThresholdsToCmdbBinderв контексте текущей РГ. Обязательное поле. - Пользователь может перейти к сценарию по кнопке Перейти к сценарию, а также выполнить переход к списку сценариев с типом
ThresholdsToCmdbBinderконтекстной РГ с помощью кнопки 🡕.
Запуск/остановка правил порогов
Запуск
После настройки правило расчета порогов можно запустить и начать анализ метрических рядов, поступающих в систему.
Нажмите кнопку Запустить в правом верхнем углу настроек правила, чтобы начать расчет по данному правилу.

Сразу после запуска правила будут проверены подходящие под Запрос метрические ряды и сгенерированы пороги в соответствии с условиями создания порогов.
По умолчанию пороги создаются без привязки к каким-либо КЕ.
на вкладке «Пороги» оперативного центра активируйте + Фильтр → Без КЕ
Остановка
Для остановки расчета порогов по определенному правилу его нужно Остановить соответствующей кнопкой в настройках правила.
При остановке правила, по умолчанию, пользователю предлагается закрыть все открытые ранее пороги по данному правилу.
Удаление правила порога
Удаление правил расчета порогов доступно:
- меню дополнительных действий
карточки правила

- меню дополнительных действий
из списка правил порогов

Экспорт/импорт правил порогов
Для удобства настройки логики обработки метрик пользователям доступны функции:
-
Клонирование - создание копии правила порога

При создании копии пользователь может внести изменения в следующие параметры правила порога:
- Владелец
- Название
- Описание
- Потоки данных
- Экспорт - экспорт настроек правила порога
Функция экспорта правила порогов доступна в карточке правила порога и в таблице на общем экране правил порогов из меню дополнительных действий
Для выполнения функции экспорта доступны следующие методы:
- экспорт в буфер - метод выбран по умолчанию:
- после успешного экспорта отображается сообщение, что правило экспортировано в буфер, в буфере обмена генерируется
BASE64строка с параметрами выбранного правила
- после успешного экспорта отображается сообщение, что правило экспортировано в буфер, в буфере обмена генерируется
- экспорт в файл - опциональная дополнительная кнопка:
- генерируется файл в формате
.txt, содержащий необходимуюBASE64-строку с экспортируемыми настройками, и загружается в браузер
- генерируется файл в формате

- Импорт - импорт настроек из другого правила порога, находящегося в текущем рабочем пространстве.
Функция импорта правила порогов доступна в карточке правила порога из меню дополнительных действий

При импорте происходит замена значений только тех полей, которые содержатся в данных импорта, все остальные поля остаются неизменными. Импорт - это аналог метода PATCH в HTTP.
Для выполнения функции импорта доступны следующие методы:
- из другого правила - импорт настроек из правила порога, находящегося в текущем рабочем пространстве:
- РГ донор и РГ реципиент совпадают — копируются все настройки, за исключением названия правила порога.
- РГ донор и РГ реципиент не совпадают — копируются все настройки, за исключением:
- названия правила порога
- источник метрик / потоки данных
- Связь с CMDB / сценарий автоматизации

- из файла - импорт настроек правила из ранее экспортированного файла
- код в
base64- импорт настроек правила из строки в форматеbase64.- с выполнением проверки на валидность импортируемых данных:
- В случае невалидных данных - выводится сообщение об ошибке
- в случае валидных данных в полях карточки появляются импортированные значения за исключением потоки данных/источники метрик, настройки блока "Связь с CMDB" (кроме поля «Название метки метрики с ID КЕ»)
- с выполнением проверки на валидность импортируемых данных:

После удачного импорта выводится сообщение об успешном импорте настроек и выполняется переход на обновленную карточку правила порога.
Поиск правил порогов
Для поиска необходимого правила порогов среди множества доступных используется функция поиска. Она позволяет находить правила по следующим параметрам:
- Название правила
- ID правила
- Описание
Расчетчик (процессор) порогов
Расчет правила выполняется с заданной в настройках частотой расчета. При этом производится запрос к хранилищу метрик, с учетом выбранных потоков данных и указанного запроса.
Запрос выполняется в API Instant query.
Пример результирующего запроса настроенного правила со следующими параметрами:
- Потоки данных: поток с ID = 1
- Окно вычисления: 30 мин
- Функция агрегации: Max
- Запрос:
increase(metric_count_total[30m])[30m:1m]
curl --location 'http://<vm_address>/prometheus/api/v1/query' \
--header 'Authorization: Basic xxxxxxxxxxxx' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data 'query=max_over_time(increase(metric_count_total[30m])[30m:1m])&extra_filters[]={monq_stream_id=~"1"}&extra_label=monq_userspace_id=1&step=30m'
Где:
- В параметр
extra_filters[]передаются значения, указанные в настройке «Потоки данных».
При поступлении в поток каждой метрике присваивается меткаmonq_stream_id=<id_потока>. - В параметр
extra_labelпередается системная меткаmonq_userspace_id=1, соответствующий текущему пространству пользователя.
Меткаmonq_userspace_idприсваивается всем метрикам по умолчанию. - В параметр
stepпередается значение из настройки «Окно вычисления» - В параметр
queryподставляется исходный запрос из поля «Запрос», обернутый в выбранную в настройках функцию агрегации.
В примереincrease(...)обернут вmax_over_time(...)и в результате получается:
max_over_time(increase(metric_count_total[30m])[30m:1m])
В примере выше для субзапроса increase(...) явно задан диапазон [range:resolution] — [30m:1m].
Это необходимо, потому что в VictoriaMetrics шаг субзапроса по умолчанию наследуется из параметра step.
Если не указать range:resolution явно, субзапрос будет выполняться с шагом 30m, что приведет к существенной потере детализации и может вызвать ошибки в расчетах — например, пропуск кратковременных пиков метрики.
Для каждого полученного временного ряда формируется хэш-идентификатор, при помощи которого производится проверка наличия ранее созданного порога для данного временного ряда.
После выполнения выражения правила, полученный результат сравнивается с таблицей текущих открытых порогов по хэш-идентификатору:
- Если порога с таким хэш-идентификатором нет - создается новый порог
- Если порог с таким хэш-идентификатором есть и уровень критичности совпадает - обновляется время жизни порога
- Если порог с таким идентификатором есть и уровень не совпадает - старый порог закрывается и открывается новый с другим уровнем критичности.