9 Commits

Author SHA1 Message Date
Maksim Totmin
07b07c9087 fix: права доступа для zabbix-agent на файлы данных
- atomic_write: chmod 644 на файлы (было 600 от mkstemp)
- install.sh: chmod 755 на /var/lib/airflow-monitor
- problems.count: grep вместо python3 (не везде доступен)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 10:27:26 +07:00
Maksim Totmin
f3e1ad7df3 fix: экспорт всех текущих проблем в Zabbix + совместимость шаблона с Zabbix 5.0
collect_and_alert теперь экспортирует ВСЕ текущие проблемные DAG-и,
а не только новые — Zabbix видит проблему пока DAG не починен.

Zabbix XML шаблон: version 5.0, убраны tags, preprocessing params,
triggers/graphs вынесены на верхний уровень, history 7d / trends 365d.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 10:11:27 +07:00
Maksim Totmin
289c308fcb fix: убрал устаревший текст only_failed из лога 2026-04-08 19:00:12 +07:00
Maksim Totmin
4e390b7dad fix: защита от параллельного выполнения DAG при retry
- двойная проверка: в actions (по списку issues) и в client (API запрос)
- если DAG уже running — retry отклоняется, сразу alert
- предотвращает дублирование выполнения отчётов
2026-04-08 18:57:51 +07:00
Maksim Totmin
e99fe6afc3 fix: добавил max_failed_age — игнорировать старые failed runs (>24ч)
- failed runs старше 24 часов пропускаются как историческая ошибка
- предотвращает массовый перезапуск DAG-ов от 2024 года
- параметр max_failed_age настраивается в config.yaml
2026-04-08 18:54:33 +07:00
Maksim Totmin
cc4dfc0692 fix: убрал only_failed (не поддерживается в Airflow 2.9), limit runs до 1
- only_failed появился в Airflow 2.10+, на 2.9.1 возвращает 400
- limit=1 — берём только последний run для каждого DAG
2026-04-08 18:45:27 +07:00
Maksim Totmin
26729641a5 perf: уменьшил limit DAG runs до 5 и request_delay до 0.1с 2026-04-08 18:42:32 +07:00
Maksim Totmin
ecad66cd2c fix: увеличил таймаут docker ps до 60с, добавил zabbix_agentd в список сервисов
- discovery таймаут 15с → 60с (на серверах с множеством контейнеров docker ps медленный)
- install.sh/setup.sh ищет zabbix_agentd, zabbix-agent, zabbix-agent2
2026-04-08 18:28:05 +07:00
Maksim Totmin
bc437cbf8c feat: добавил систему мониторинга Airflow DAG-ов с интеграцией в Zabbix
- автообнаружение Docker Airflow через docker inspect и .env
- мониторинг failed и long-running DAG-запусков с автоматическим retry
- экспорт данных в файлы для Zabbix Agent через UserParameter
- офлайн-сборка ZIP-архива для закрытых контуров
- Zabbix шаблоны для 5.x (XML) и 6.x+ (YAML)
- systemd сервис с graceful shutdown и lock file
2026-04-08 17:23:03 +07:00