Правила алертов
Тема дорожной карты · Loki
Правила алертов в Grafana Loki — это группы правил в формате YAML, которые Ruler вычисляет с фиксированным интервалом и инициирует алерты в Alertmanager, когда метрический LogQL-запрос превышает заданный порог. Каждое правило содержит поле name, поле expr с метрическим LogQL-запросом (например, rate({job="api"} |= "5xx" [5m]) > 1), длительность for, указывающую, как долго условие должно быть истинным перед срабатыванием, а также labels и annotations для метаданных, таких как severity и summary. Правила алертов организуются в группы внутри YAML-файлов, хранящихся в месте, настроенном в ruler.storage файла loki-config.yaml; Ruler опрашивает это место и динамически загружает любые изменения без необходимости перезапуска. Правила алертов Loki следуют той же схеме YAML, что и правила оповещений Prometheus, что позволяет командам, знакомым с Prometheus, легко создавать алерты на основе логов без необходимости изучать новый формат. Перед развёртыванием в продакшене рекомендуется тестировать правила алертов с помощью logcli, чтобы убедиться, что LogQL-выражение возвращает ожидаемые значения для известных событий логов в Grafana Loki.
Как это работает
Правила алертов: Ruler-компонент Loki оценивает LogQL-правила + шлёт alerts в Alertmanager (тот же что Prometheus). Alert rules: триггерятся когда LogQL metric query пересекает threshold (e.g., "больше 10 ошибок/мин за последние 5 мин"). Recording rules: pre-compute LogQL-метрики + сохраняют в Prometheus-совместимый remote_write target — экономит cost на повторяющихся dashboard queries. Комбинируйте Loki alerts с Prometheus alerts в одном Alertmanager для unified routing.
Когда применять
Loki alerts для log-derived сигналов, не доступных как metrics ("scan attempts spike", "auth failure rate"). Для большинства operational metrics Prometheus alerts дешевле. Тестируйте alert rules на исторических данных до включения — false positives = alert fatigue. Rule evaluation interval разумный (30s-1m, не 5s).
Типичные ошибки
Ловушки Правила алертов: alert rule на тяжёлом LogQL query (CPU/IO съедены alerts); flapping alerts из-за noisy queries (for: 5m для sustained); нет Alertmanager grouping (один event → 50 alerts); recording rules без retention plan (storage растёт).