Алерт
Алерт — набор последовательных именованных запросов, которые вычисляются один раз в минуту. Полученное значение запроса сравнивается с заданными пороговыми значениями. Если порог достигнут, Monium Metrics переводит алерт в статус Alarm или Warning и оповещает пользователя по каналу уведомления.
Мультиалерт — алерт, который создает отдельный экземпляр проверки для каждой уникальной комбинации значений выбранных меток метрик. Например, если метрика имеет метку host с тремя значениями (host1, host2, host3), мультиалерт создаст три независимых проверки — по одной для каждого хоста. Это позволяет отслеживать состояние метрик на разных ресурсах с помощью одного алерта.
Статусы алертов
Алерт может находиться в одном из следующих статусов:
| Цвет | Статус | Описание |
|---|---|---|
| 🟢 | OK |
Значение метрики в пределах установленной нормы. |
| 🟡 | Warning |
Значение метрики достигло порога предупреждения Warning. |
| 🔴 | Alarm |
Значение метрики достигло порога критического статуса Alarm. |
| 🔵 | No data |
Для вычисления функции алерта не хватает данных метрик. |
| ⚪️ | Error |
Значение алерта вычислить невозможно. |
Цветовое обозначение алерта передается при уведомлении через Telegram.
История вычислений алерта
История вычислений алерта представлена в виде графика, состоящего из столбцов, цвет которых зависит от статуса алерта на момент его вычисления.
Для навигации по истории можно выбрать один из предустановленных масштабов отображения:
1h— 1 час.1d— 1 день.1w— 1 неделя.1m— 1 месяц.
Минимальный масштаб — 1h: каждый столбец на графике показывает статус алерта в соответствующую минуту. При больших масштабах цвет столбца составляется из статусов, вычисленных в этом интервале.
При нажатии на столбец загружается информация о настройках алерта в выбранный момент вычисления.
Примечание
При загрузке информации из истории вычисления производится повторный расчет статуса алерта, который отображается в поле Статус вычисления алерта. Статус алерта в истории может не совпадать с текущим результатом вычисления из-за особенностей прореживания исторических данных или задержек при поставке данных в Monium Metrics.
Настройки алерта
Запросы
Набор запросов, которые возвращают линию или набор линий.
Можно:
- отключить вычисление запроса, нажав кнопку
и выбрав Деактивировать. Ссылки на запросы, которые не вычисляются, приводят к ошибкам. - скрыть результаты вычисления запроса на графике, нажав кнопку
. - отобразить результаты вычисления запроса на графике, нажав кнопку
.
Условия срабатывания
Запрос для проверки
Имя запроса, к результату вычисления которого применяется функция агрегации.
Функция агрегации
Функция агрегации применяется к результату вычисления запроса для проверки.
| Функция агрегации | Описание |
|---|---|
| Хотя бы одно значение | Хотя бы одно из значений метрики в запросе превышает заданные пороги в указанном периоде. |
| Все значения | Все значения метрики в запросе превышают заданные пороги в указанном периоде. |
| Среднее | Вычисляет среднее значение в указанном периоде для каждой метрики. Например, если запрос возвращает две метрики, Monium Metrics для каждой из них вычисляет среднее значение в указанном окне. |
| Количество | Вычисляет количество значений метрики в указанном периоде. |
| Последнее значение | Использует последнее значение метрики в указанном периоде. Если значения метрики не удалось получить, Monium Metrics меняет статус алерта на No data. |
| Максимум | Использует максимальное значение метрики в указанном периоде. |
| Минимум | Использует минимальное значение метрики в указанном периоде. |
| Сумма | Вычисляет сумму значений за указанный период для каждой метрики. |
Например, чтобы следить за последним значением метрики, которое было в течение последних 15 минут, необходимо выбрать функцию Последнее и задать окно вычисления 15m.
Функция сравнения
Функция сравнения применяется к результату вычисления функции агрегации и пороговым значениям Warning и Alarm. Если агрегированное значение удовлетворяет пороговому, Monium Metrics изменяет статус алерта.
Warning
Пороговое значение, при достижении которого алерт перейдет в статус Warning.
Alarm
Пороговое значение, при достижении которого алерт перейдет в статус Alarm.
Окно вычисления
Временной период, в котором рассчитывается функция агрегации. Окно позволяет исключить резкие изменения значения метрик, реагируя только на изменения за больший промежуток времени.
Можно выбрать одно из предустановленных значений или задать свое в следующем формате:
1h— 1 час.1m— 1 минута.1s— 1 секунда.
Например, значение 3m 45s задает временное окно в 3 минуты 45 секунд.
Задержка вычисления
Сдвиг временного окна назад во времени в секундах. По умолчанию равен 0. Позволяет исключить неожиданное срабатывание алерта в тех случаях, когда в запросах используются метрики, которые собираются с разным интервалом. Можно выбрать одно из предустановленных значений или задать свое аналогично окну вычисления.
Обработка отсутствия данных
Политики обработки отсутствия данных определяют, как сервис реагирует на отсутствие точек данных или метрик в окне вычисления. Отсутствие точек данных может быть вызвано задержкой в сборе данных или другими факторами. Политики применяются до вычисления условий срабатывания и переводят алерт в указанный статус.
Примечание
Точка данных — значение метрики, собранное на определенном временном периоде. Отсутствие точек данных означает, что в заданном окне вычисления не было собрано ни одного значения метрики, отсутствуют данные для анализа и отображения.
Доступные варианты политик:
-
Manual— политика для ручной обработки отсутствия данных. Если доступны исторические данные, график будет отображаться при отсутствии данных в окне вычисления. С помощью этой политики вы можете посмотреть текущие значения для детального анализа. -
Ok,Warn,Alarm,No data— если в окне вычисления отсутствуют данные хотя бы у одной метрики из запроса, каждая из этих политик автоматически переводит алерт в соответствующий статус. Исторические данные не учитываются. При отсутствии данных в окне вычисления график перестанет отображаться.Изменение размера окна вычисления может повлиять на доступность точек данных и на отображение графика.
Вы можете обработать отсутствие метрик или точек во временном окне двумя способами:
- Сменить статус алерта с помощью политик Отсутствие метрик по селектору или Отсутствие точек в окне вычисления.
- Обработать вручную.
Примечание
Чтобы алерты переходили в статус No data при отсутствии метрик или точек во временном окне, выставите для всех типов алертов значение политик No data. Использование Default и Manual не рекомендуется, так как это требует дополнительной ручной обработки.
Отсутствие метрик по селектору
Политика определяет статус алерта, если хотя бы по одному селектору не было найдено метрик. Например, метрик не существует или они были удалены как устаревшие — TTL.
Возможные значения:
Default— значение по умолчаниюNo dataдля всех типов алертов.Ok— переводит алерт в статусOK.Warn— переводит алерт в статусWarning.Alarm— переводит алерт в статусAlarm.No data— переводит алерт в статусNo data.
Отсутствие точек в окне вычисления
Политика определяет статус алерта, если хотя бы для одной из метрик во временном окне нет точек.
Для пороговых алертов, настроенных на несколько метрик, предикаты выполняются независимо для каждой метрики. Итоговый статус алерта — агрегация статусов для каждой из метрик в следующем порядке: No data < OK < Warning < Error < Alarm. Если политика Отсутствие точек в окне вычисления переведет такой пороговый алерт, например, в статус Warning из-за отсутствия точек в одной линии, а для другой линии выполнится предикат, переводящий алерт в статус Alarm, то итоговый статус алерта будет Alarm.
Возможные значения:
Default— значение по умолчаниюNo dataдля всех типов пороговых алертов.Ok— переводит алерт в статусOK.Warn— переводит алерт в статусWarning.Alarm— переводит алерт в статусAlarm.No data— переводит алерт в статусNo data.[object Object]— передает управление предикатам или программе алерта для обработки вручную.
Ручная обработка отсутствия данных
Если для любой политики указано значение Manual, управление будет передано предикатам алерта или программе.
Не рекомендуется использовать значение Manual — это усложняет программу алерта. В большинстве случаев достаточно воспользоваться значением политики No data.
Мультиалерты
Мультиалерты позволяют настроить одинаковые проверки для однотипных сущностей, например, для всех хостов кластера или шардов базы данных.
Создание мультиалерта
Чтобы создать мультиалерт, укажите в параметре Разложение по меткам одну или несколько меток. Для каждого уникального значения метки (или комбинации значений нескольких меток) автоматически создается отдельный под-алерт.
Например:
- Если указать метку
host, создастся под-алерт для каждого хоста. - Если указать метки
hostиdisk, создастся под-алерт для каждой комбинации хоста и диска.
Под-алерты
Под-алерт — автоматически создаваемый алерт, который нельзя редактировать вручную. Его параметры определяются родительским мультиалертом. Каждый под-алерт:
- Вычисляется и срабатывает независимо от других под-алертов.
- Создается автоматически при появлении метрик с новыми значениями меток.
- Удаляется автоматически при удалении соответствующих метрик.
Пример мультиалерта
Чтобы создать мультиалерт для мониторинга использования CPU на ресурсах сервиса Compute Cloud, используйте следующий селектор:
{project = "<project_id>", service = "__compute__", cluster = "default", name = "cpu_usage", resource_id = "*", resource_type = "*"}
Укажите в параметре Разложение по меткам метки resource_id и resource_type. В результате для каждой уникальной комбинации типа и идентификатора ресурса будет создан отдельный под-алерт.
Просмотр мультиалерта
На странице мультиалерта:
- В блоке История вычисления алерта отображается сводная информация о количестве под-алертов в каждом статусе.
- В блоке Под-алерты показан список под-алертов с возможностью фильтрации по значениям меток и статусу.