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

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

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

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

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

Частота расчета
Временной интервал, определяющий, с какой частотой будет производиться расчет правила.
2. Источник метрик

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

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

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

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

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

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

Расширенные настройки позволяют вручную управлять параметрами прогнозирования вместо использования предустановленных горизонтов (15/30/60 точек). Доступен ручной ввод от 5 до 100 точек (по умолчанию 15). Настройки обучения гарантируют, что прогноз строится только при достаточном объёме качественных исторических данных. Пользователь задаёт минимальное количество точек (от 10 до 20 000) и период релевантности (от 1 до 300 дней), а система автоматически проверяет, что в выбранном интервале действительно набирается нужное число точек с учётом окна вычисления. Если данных недостаточно — прогноз не строится, а проверка повторяется при каждом цикле расчёта порога до выполнения условия. Это исключает построение прогнозов на недостаточных или нерепрезентативных данных, повышая их точность и надёжность.
Сезонность
Данная настройка позволяет учитывать циклические паттерны (повторяющиеся закономерности) в данных для повышения точности прогноза.
а
Режимы работы:
- Автоматический (по умолчанию) — система самостоятельно определяет сезонность с помощью встроенного алгоритма.
- Ручной — пользователь задаёт границу одного сезона (длительность полного цикла повторяющегося паттерна).
- Выключен — сезонность не учитывается (применяется для линейных временных рядов).
Граница сезона вычисляется по формуле: граница сезона = количество точек прогноза × окно вычисления.
Например, при окне вычисления 5 минут и 15 точках прогноза граница сезона составит 75 минут — это означает, что сезонный паттерн повторяется каждые 75 минут.
Ручной режим полезен, когда известен нестандартный цикл метрики (например, суточный или недельный), который система может не распознать автоматически.
Дополнительная фильтрация по меткам позволяет уточнить, для каких порогов строить прогноз. Пользователю отображается исходный запрос из блока Источник метрик, который может быть дополнен условиями (название метки, оператор и значение) — количество фильтров не ограничено. Система отображает финальный запрос с учётом всех фильтров, который можно скопировать вместе с исходным, а также доступен быстрый переход к экрану Метрики
4. Связь с CMDB
Связь с CMDB позволяет привязать генерируемые пороги к конкретному объекту инфраструктуры (например, серверу, базе данных или приложению). Это значит, что все аномалии и алерты будут привязаны не просто к метрике, а к конкретному оборудованию или сервису, что упрощает поиск причины проблемы и понимание, на что именно повлиял сбой.

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

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

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

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

Автозакрытие
Время, через которое порог автоматически будет закрыт, если события подтверждения порога не приходят.
Отсчет выполняется с момента открытия/подтверждения порога.
Автоматизация (дробление порогов)
Некоторые правила могут одновременно создавать и закрывать большое количество порогов. Для более эффективной работы сценариев автоматизации рекомендуется дробить большое сообщение с результатом расчета на несколько более мелких. Для этого пользователю доступны опции:
- не ограничено - дробление порогов осуществляться не будет
- не более - дробление порогов будет производится по заданному значению
- по умолчанию - дробление порогов будет производится по заданной политике Политика дробления порогов в настройках пространства
Название порога
Допускается использование макросов: указываются в {{двойных фигурных скобках}}:
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.<название метки>- позволяет указать название метки метрики
Аннотации
Дополнительные поля порога, которые будут присвоены ему при создании. Также поддерживается использование макросов.
Запуск/остановка правил порогов
Запуск
После настройки правило расчета порогов можно запустить и начать анализ метрических рядов, поступающих в систему.
Нажмите кнопку Запустить в правом верхнем углу настроек правила, чтобы начать расчет по данному правилу.

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

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

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

При создании копии пользователь может внести изменения в следующие параметры правила порога:
- Владелец
- Название
- Описание
- Потоки данных
-
Экспорт - экспорт настроек правила порога в формат
base64
-
Импорт - импорт настроек из формата
base64в текущее правило при его создании
Поиск правил порогов
Для поиска необходимого правила порогов среди множества доступных используется функция поиска. Она позволяет находить правила по следующим параметрам:
- Название правила
- 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, что приведет к существенной потере детализации и может вызвать ошибки в расчетах — например, пропуск кратковременных пиков метрики.
Для каждого полученного временного ряда формируется хэш-идентификатор, при помощи которого производится проверка наличия ранее созданного порога для данного временного ряда.
После выполнения выражения правила, полученный результат сравнивается с таблицей текущих открытых порогов по хэш-идентификатору:
- Если порога с таким хэш-идентификатором нет - создается новый порог
- Если порог с таким хэш-идентификатором есть и уровень критичности совпадает - обновляется время жизни порога
- Если порог с таким идентификатором есть и уровень не совпадает - старый порог закрывается и открывается новый с другим уровнем критичности.