Гайды
Мониторинг Celery с Flower
Запуск UI, аутентификация и сеть, Prometheus, операционные сигналы и ограничения по сравнению с трейсингом.
~7 мин чтения
Мониторинг Celery с Flower
Flower — веб-интерфейс и HTTP API для наблюдения за воркерами Celery: активные/завершённые задачи, графики, управление воркерами (осторожно в проде). Дополняет логи и метрики приложения. Основы Celery — распределённые очереди; расписание — Beat.
1. Установка и запуск
pip install flower
celery -A proj.celery_app flower --port=5555
UI: http://localhost:5555
2. Аутентификация
Не оставляйте Flower в открытом интернете. Варианты:
--basic_auth=user:pass- Reverse proxy с mTLS / SSO
- Доступ только из VPN / внутренней сети k8s
3. Prometheus
Flower экспортирует метрики (в зависимости от версии — проверьте флаги --prometheus_enable или интеграцию через celery-exporter как альтернативу).
У celery-exporter отдельный процесс читает события брокера/воркеров и отдаёт /metrics в формате Prometheus — удобно, если Flower нужен только людям, а алерты строятся в Alertmanager.
Полезные метрики: длина очереди, task success/failure rate, worker online.
4. Что смотреть операционно
| Сигнал | Действие |
|---|---|
| Рост очереди | Добавить воркеров, оптимизировать задачу, проверить брокер |
Много FAILURE | Логи воркера, ретраи, poison message |
| Worker «красный» | Рестарт, OOM, несовместимость кода |
5. Ограничения Flower
Не заменяет distributed tracing (OpenTelemetry) и структурированные логи; для глубокой отладки цепочек сервисов подключайте трейсинг отдельно.
6. Broker и Flower
При падении Redis/RabbitMQ Flower покажет «offline» воркеров — настройте алерты на брокер отдельно. Visibility timeout (SQS) и ack/retry политики влияют на «зависшие» задачи в UI.
7. Чек-лист
- Flower защищён и не торчит в публичный интернет.
- Алерты по длине очереди и error rate вне Flower (Prometheus/CloudWatch).
- Runbook: как отменить «заблудшую» задачу и очистить результат.
- CORS и CSRF не ослаблены ради удобства Flower API.
- Версия Flower совместима с версией Celery/Kombu в проекте.
Дальше: Celery · тег мониторинг