- двойная проверка: в actions (по списку issues) и в client (API запрос)
- если DAG уже running — retry отклоняется, сразу alert
- предотвращает дублирование выполнения отчётов
- failed runs старше 24 часов пропускаются как историческая ошибка
- предотвращает массовый перезапуск DAG-ов от 2024 года
- параметр max_failed_age настраивается в config.yaml
- install.sh проверяет версию Python, если < 3.10 — собирает 3.11 из исходников
- Python ставится локально в /opt/airflow-monitor/python, без влияния на систему
- исходники Python 3.11.12 включены в архив (python-src/)
- wheels для Python 3.9-3.14 покрывают все версии
- архив 26 МБ (20 МБ — исходники Python)
- заменил Unicode-рамки на ASCII для корректного отображения
- переименовал Zabbix Sender в Data Exporter
- добавил цепочку JSON files -> Zabbix Agent -> Zabbix Server
- исправил блок-схему цикла: экспорт в файлы вместо отправки
- автообнаружение 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