docker compose upCompose сваливает логи всех контейнеров в один поток: когда стек не поднимается, приходится угадывать, какой сервис всё блокирует, и листать тысячи строк. cpulse рисует граф
depends_on деревом, следит за контейнерами в реальном времени и прямо называет корневую причину.Что внутри:
🔘 у каждого сервиса осмысленное состояние (blocked, starting, degraded при трёх и более рестартах), вычисленное из состояния контейнера, exit-кода и графа зависимостей;
🔘 режим
cpulse doctor без TUI: печатает корневую причину и находки, при критичных выходит с кодом 1 — встраивается в CI;🔘 вкладки по сервису: логи, спарклайны CPU и памяти, зависимости, healthcheck с запуском probe прямо из интерфейса;
🔘 по проекту целиком: таймлайн запуска диаграммой Ганта, граф с условиями на рёбрах, диагностика;
🔘 авто-обнаружение всех контейнеров локального демона — новые стеки появляются без перезапуска;
🔘 init-контейнер, завершившийся с
exit 0, визуально отличается от упавшего; раньше это выяснялось только чтением логов.Проект молодой: первый релиз 26 июня, к 13 июля уже v0.4.1. Ставится через brew или бинарником из релизов.
Пригодится тем, кто гоняет многосервисные compose-стеки и устал выяснять, какой из контейнеров держит остальные.
https://github.com/hyturing/compose-pulse
Язык: Go. Лицензия: MIT.
@prog_tools