в уроке 5 уточнено время срабатывания и восстановления алерта scheduler.
Почему
Grafana 11.5.2 не применяет Threshold напрямую к временному ряду. Правило завершалось ошибкой only reduced data can be alerted on, поэтому остановка Airflow scheduler не приводила к состоянию Alerting.
Grafana 11.5.2 с подставным Prometheus: все семь правил получили health: ok, а Airflow Scheduler Down перешёл в Alerting;
независимые ревью Codex и craftsman Opus: APPROVED.
Полный Docker-стенд не запускался: Docker Engine был остановлен.
Closes #28
## Что изменено
- во всех четырёх правилах Airflow и трёх правилах Kafka добавлена цепочка `Prometheus range → Reduce(last) → Threshold`;
- сохранены исходные операторы и значения порогов;
- аннотации с числом переведены на `{{ $values.B.Value }}`;
- добавлены регрессионные тесты provisioning-конфигурации;
- в уроке 5 уточнено время срабатывания и восстановления алерта scheduler.
## Почему
Grafana 11.5.2 не применяет Threshold напрямую к временному ряду. Правило завершалось ошибкой `only reduced data can be alerted on`, поэтому остановка Airflow scheduler не приводила к состоянию Alerting.
## Проверка
- `uv run --with-requirements generator/requirements.txt pytest tests/ -q -p no:cacheprovider`: 33 passed;
- тесты generator: 218 passed;
- `docker compose config --quiet`: успешно;
- Grafana 11.5.2 с подставным Prometheus: все семь правил получили `health: ok`, а `Airflow Scheduler Down` перешёл в `Alerting`;
- независимые ревью Codex и craftsman Opus: `APPROVED`.
Полный Docker-стенд не запускался: Docker Engine был остановлен.
ddmitry
self-assigned this 2026-09-01 00:52:11 +03:00
- Зачем:
- диапазонные запросы Prometheus возвращали временные ряды, из-за чего Grafana не вычисляла алерты Airflow и Kafka.
- Что:
- между запросом Prometheus и Threshold добавлен Reduce(last) в семи правилах, а аннотации переведены на итоговое число.
- добавлены регрессионные тесты конфигурации и зависимость PyYAML для их запуска.
- в уроке 5 уточнено время срабатывания и восстановления алерта scheduler.
- Проверка:
- uv run --with-requirements generator/requirements.txt pytest tests/ -q -p no:cacheprovider: 33 passed.
- uv run --with-requirements requirements.txt pytest tests/ -q -p no:cacheprovider из generator: 218 passed.
- Docker Compose config и вычисление правил в Grafana 11.5.2 прошли успешно.
ddmitry
merged commit a39f613a01 into main2026-09-01 00:53:26 +03:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #28
Что изменено
Prometheus range → Reduce(last) → Threshold;{{ $values.B.Value }};Почему
Grafana 11.5.2 не применяет Threshold напрямую к временному ряду. Правило завершалось ошибкой
only reduced data can be alerted on, поэтому остановка Airflow scheduler не приводила к состоянию Alerting.Проверка
uv run --with-requirements generator/requirements.txt pytest tests/ -q -p no:cacheprovider: 33 passed;docker compose config --quiet: успешно;health: ok, аAirflow Scheduler Downперешёл вAlerting;APPROVED.Полный Docker-стенд не запускался: Docker Engine был остановлен.