Troubleshooting
Подборка типовых проблем при эксплуатации GetOLT и проверенных способов их обойти.
Подключение к БД
Communications link failure
MySQL недоступна или контейнер упал.
docker-compose -f docker-compose.dev.yml psnetstat -an | grep 3307docker-compose -f docker-compose.dev.yml restartConnection is closed
Connection закрылся раньше времени. Используйте try-with-resources при работе с DatabaseConnectionManager:
try (Connection conn = connectionManager.getConnection()) { // работа с БД}OLT-соединения
Stream closed при сборе конфигурации
Telnet-сессия закрылась преждевременно. Решение — всегда работать через OltManager, чтобы корректно открывать и закрывать соединение:
OLT olt = oltManager.createAndAuthenticateOlt(ip);try { // работа с OLT} finally { oltManager.closeOltConnection(olt);}Таймаут аутентификации
Скорее всего на OLT уже висит вторая Telnet-сессия (с другого инстанса GetOLT или от вас вручную). За этим следит OltSessionManager — проверьте его статус:
curl http://localhost:8088/api/olt-sessions/statusВеб-интерфейс
Порт 8088 уже занят
server.port=8089Зависает массовое обновление
Массовые операции — асинхронные, UI просто ждёт taskId. Проверьте напрямую:
curl http://localhost:8088/api/async/tasks/{taskId}Production
Table doesn’t exist
БД не инициализирована (Liquibase/Flyway не отработал или volume не подмонтирован):
docker compose down -vdocker compose up -dВнимание:
down -vудаляет данные. На проде так делать нельзя — поднимать миграции вручную.
Куда смотреть дальше
Если ничего из перечисленного не подошло — соберите и приложите:
- логи приложения (
docker compose logs app), - ответ
GET /actuator/health, - содержимое
OltSessionManagerстатуса, - последний snapshot конфигурации проблемного OLT (см. Анализ конфигов).
Нашли ошибку или нужно что-то дополнить? Напишите нам.
Разработка: gmasich.ru