modified: main_dc/yalarba/api_yal/cmd/main.go
modified: main_dc/yalarba/api_yal/go.mod modified: main_dc/yalarba/api_yal/go.sum new file: main_dc/yalarba/api_yal/internal/database/psql_db.go add connection to db without tests api_yal
This commit is contained in:
@@ -5,9 +5,12 @@ import (
|
||||
"net/http"
|
||||
|
||||
"api_yal/internal/config"
|
||||
"api_yal/internal/database"
|
||||
"api_yal/internal/handlers"
|
||||
"api_yal/internal/server"
|
||||
"api_yal/internal/logger"
|
||||
"api_yal/internal/server"
|
||||
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
func main() {
|
||||
@@ -15,30 +18,35 @@ func main() {
|
||||
// Конфигурация включает параметры БД, уровень логирования, порт приложения и т.д.
|
||||
cfg := config.Load()
|
||||
|
||||
|
||||
// Инициализация логгера с указанным уровнем логирования и окружением (dev/prod)
|
||||
// Логгер будет настроен соответствующим образом для заданного окружения
|
||||
logger.Init(cfg.LogLevel, cfg.Environment)
|
||||
|
||||
|
||||
// Получение инстанса логгера для использования во всем приложении
|
||||
zapLogger := logger.Get()
|
||||
|
||||
// Логирование старта приложения с указанием используемого стека технологий
|
||||
zapLogger.Info("Start api_yal REST API on stack Golang (gorm, chi) and PostgresDB connect")
|
||||
|
||||
// Инициализация подключения к базе данных PostgreSQL с использованием параметров из конфигурации
|
||||
// Возвращается объект gorm.DB для работы с ORM
|
||||
_, err := database.NewPostgresConnection(cfg)
|
||||
if err != nil {
|
||||
// Критическая ошибка подключения к БД - приложение не может работать без БД
|
||||
zapLogger.Panic("Failed to connect to database:", zap.Error(err))
|
||||
}
|
||||
|
||||
// Создаем маршрутизатор
|
||||
mux := http.NewServeMux()
|
||||
|
||||
|
||||
// Регистрируем обработчики
|
||||
handlers.RegisterAuthRoutes(mux)
|
||||
|
||||
|
||||
// Создаем и запускаем сервер
|
||||
srv := server.NewServer(":8787", mux)
|
||||
|
||||
|
||||
log.Printf("Server starting on port %s", ":8787")
|
||||
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
|
||||
log.Fatalf("Server failed to start: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user