Метод POST /v1/db-connections/check-connection/{db_connection_id}

Краткое описание

Проверяет доступность и корректность подключения к базе данных для сохранённого конфигурации подключения по его идентификатору. Используется для валидации существующей конфигурации перед её применением.

Входные параметры

Параметры пути (обязательные):

  1. db_connection_id (string, обязательный)

    • Уникальный идентификатор конфигурации подключения БД

    • Должна существовать запись с таким id в таблице DBConnection

Заголовки:

  1. Authorization (опционально)

    • Токен аутентификации (если требуется по настройкам приложения)

Алгоритм работы метода

ЭТАП 1: Получение конфигурации подключения

  • Выполняется поиск записи DBConnection по переданному db_connection_id

  • Если запись не найдена — возвращается HTTP 404

ЭТАП 2: Извлечение параметров подключения

Из найденной конфигурации извлекаются параметры:

  • host — адрес сервера БД

  • port — порт подключения

  • username — имя пользователя

  • password — пароль (зашифрованный в БД, расшифровывается перед использованием)

  • database — имя базы данных

  • Опциональные: ssl_mode, timeout и другие параметры подключения

ЭТАП 3: Попытка установления соединения

  • Создаётся временное подключение к БД с извлеченными параметрами

  • Выполняется простой тестовый запрос (например SELECT 1)

  • Соединение закрывается после проверки

ЭТАП 4: Возврат результата

  • Если подключение успешно — возвращается 200 OK

  • Если подключение не удалось — возвращается 400 Bad Request с описанием ошибки

Ответы

Успешный ответ (200 OK)

Формат: JSON

Пример успешного ответа:

{ "status": "success", "message": "Connection to the database was successful.", "details": { "host": "localhost", "port": 5432, "database": "production_db", "connection_time_ms": 45 } }

Рекомендации по использованию

  • Проверяйте подключение после создания конфигурации:

    • Убедитесь, что параметры корректны перед использованием

    • Это предотвратит ошибки при запуске процессов

  • Используйте в процессе диагностики:

    • Если задача не работает — проверьте подключение

    • Это поможет исключить проблемы с БД

  • Обрабатывайте разные типы ошибок:

    • 404: конфигурация не существует (создайте новую)

    • 400: проблема с доступом (проверьте пароль, сеть, брандмауэр)

  • Не вызывайте слишком часто:

    • Каждый вызов открывает новое соединение к БД

    • Лучше использовать только при необходимости (создание, обновление, диагностика)

  • Используйте timeout в клиенте:

    • Если БД недоступна, ответ может долго ждать

    • Установите разумный timeout (30 сек)

  • Логируйте результаты:

  • Сохраняйте результаты проверок для аудита

  • Это поможет в анализе проблем