Linux Labs

Наблюдаемость: метрики, алерты, логи / Ступень 4 из 9

Правило алерта: порог и длительность

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 2 из 6 · на машине · 7 мин

Файл правил и rule_files

Prometheus проверяет только те правила, которые загрузил из файлов, перечисленных в его конфигурации.

Правило алерта — запись в файле YAML: имя алерта, выражение PromQL и условия, при которых алерт горит. Правила собраны в группы, в одном файле их может быть несколько:

yaml
groups:
  - name: machines      # группа правил
    rules:
      - alert: InstanceDown
        expr: up == 0   # какие ряды «горят»
        for: 1m         # сколько продержаться

Какие файлы читать, Prometheus узнаёт из списка rule_files в /etc/prometheus/prometheus.yml: путь к файлу или шаблон, который подхватит весь каталог.

yaml
rule_files:
  - /etc/prometheus/rules/machines.yml

В конфигурации из пакета rule_files: пустой — правил у Prometheus нет, сколько бы файлов ни лежало рядом.

Ошибку в файле ловят до перечитывания: promtool check rules <файл> разбирает YAML и выражения правил, а promtool check config проверяет конфигурацию вместе с подключёнными файлами и печатает, сколько их нашёл. Перечитывает конфигурацию sudo systemctl reload prometheus — так же, как после правки заданий сбора в уроке о сборе метрик.

Упражнение · сделать

Подключи файл правил

Сделай так, чтобы Prometheus загрузил правила из каталога /etc/prometheus/rules: поправь /etc/prometheus/prometheus.yml (через sudo), проверь его promtool и перечитай конфигурацию Prometheus.

Войти и начать Машина доступна после входа

Цели · 0 из 2

  • Подключить каталог правил в prometheus.yml ещё не выполнена
  • Загрузить правило в работающий Prometheus ещё не выполнена

Цели шага

0 из 2
  • Подключить каталог правил в prometheus.yml — ещё не выполнена
  • Загрузить правило в работающий Prometheus — ещё не выполнена
Ubuntu 24.04

Цели шага

0 из 2
  • Подключить каталог правил в prometheus.yml — ещё не выполнена
  • Загрузить правило в работающий Prometheus — ещё не выполнена
Загрузка…