Обзор
Задача - видеть, что происходит с устройствами на Linux-хосте: когда что подключилось, отключилось и как на это реагировать. Сервис слушает udev-события, прогоняет их через внутренний EventBus с паттерном observer и экспортирует метрики и логи, чтобы событие устройства становилось наблюдаемым фактом, а не строчкой в dmesg.
Архитектура
- EventBus: внутренняя шина событий с подпиской
- Observers: обработчики (логи, метрики, действия)
- Prometheus: гистограммы и счётчики в реальном времени
- HTTP API: health, уровень логирования
- Redis Pub/Sub: по желанию разнести collector и consumer
Технический стек
- Язык: Python
- Библиотеки:
pyudev,prometheus-client,redis - Окружение: Docker, Docker Compose
