Отладка и устранение неполадок
Пошаговая диагностика через monitor doctor, логи, support-bundle и типичные сценарии сбоев.
Редакция от 15 июля 2026
Рекомендуемый порядок
monitor status— контейнеры и URL.monitor doctor— полный отчёт с exit code 1 при проблемах.monitor logs <service> -f— backend, frontend, db, redis.monitor support— архив для отправки в поддержку.
monitor doctor
Проверяет блоки:
- docker — daemon доступен, версия compose.
- install — каталог, .env (chmod 600), обязательные ключи.
- containers — monitor-db, monitor-redis, monitor-backend, monitor-frontend.
- network — HTTP на backend:8000 и frontend:3000 (401 на API без логина — норма).
- license — active / expired / missing.
- host — свободное место на диске Docker и /opt/monitor, RAM, systemd enabled.
monitor health (cron-friendly)
monitor health echo $? # 0 = healthy, 1 = problem
Логи
monitor logs # все сервисы, 200 строк monitor logs backend -f # follow backend monitor logs frontend -f monitor logs db
Support bundle
monitor support # → ./monitor-support-YYYYMMDD-HHMMSS.tar.gz
Внутри: docker version/info, compose ps, inspect и логи контейнеров, df, free, masked .env, вывод doctor. Секреты замаскированы — перед отправкой всё равно просмотрите архив.
Интерактивная отладка
monitor shell backend # shell в backend monitor dbshell # psql monitor redis # redis-cli monitor config # .env без секретов
Типичные проблемы
Порты 3000/8000 заняты
ss -ltn | grep -E ':3000|:8000' # освободить порты или задать FRONTEND_PORT/BACKEND_PORT до install.sh
Контейнер exited / unhealthy
monitor logs <service> sudo monitor restart docker inspect monitor-backend
Не пускает в UI
Email: MONITOR_ADMIN_EMAIL (по умолчанию admin@monitor.local). Пароль — в выводе install.sh или grep MONITOR_ADMIN_PASSWORD /opt/monitor/.env.
API 402 / License expired
См. Лицензия — запросите новый ключ по fingerprint.
exec format error / wrong architecture
Бандл собран под другую CPU (uname -m). Нужен amd64 или arm64, совпадающий с хостом.
Мало места на диске
df -h /var/lib/docker /opt/monitor sudo monitor prune docker system df
Backend не отвечает после restore
Restore автоматически перезапускает backend. Если миграции падают — смотрите monitor logs backend.
py-spy / profiling (Python 3.12+)
Для профилирования процессов нужен py-spy ≥ 0.4. При ошибке «Unsupported version of Python» обновите образ backend до актуальной версии MoniTOR.