refactor: made logger a dependency

This commit is contained in:
2025-06-20 16:52:52 +03:00
parent 7ad1336c88
commit 535d3ff939
3 changed files with 39 additions and 13 deletions

View File

@@ -13,18 +13,21 @@
package main
import (
"time"
"net/http"
"context"
"fmt"
"net/http"
"time"
"github.com/gin-gonic/gin"
"go.uber.org/fx"
"easywish/config"
docs "easywish/docs"
"easywish/internal/controllers"
"easywish/internal/logger"
"easywish/internal/routes"
"easywish/internal/services"
docs "easywish/docs"
swaggerfiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger"
)
@@ -35,18 +38,15 @@ func main() {
panic(err)
}
defer logger.Sync()
fx.New(
services.Module,
fx.Provide(
logger.NewLogger,
gin.Default,
controllers.NewAuthController,
controllers.NewServiceController,
),
services.Module,
controllers.Module,
routes.Module,
fx.Invoke(func(lc fx.Lifecycle, router *gin.Engine) {
// Swagger
@@ -54,7 +54,7 @@ func main() {
router.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerfiles.Handler))
server := &http.Server{
Addr: ":8080",
Addr: fmt.Sprintf(":%s", config.GetConfig().Port),
Handler: router,
}

View File

@@ -0,0 +1,12 @@
package controllers
import (
"go.uber.org/fx"
)
var Module = fx.Module("controllers",
fx.Provide(
NewServiceController,
NewAuthController,
),
)

View File

@@ -1,17 +1,31 @@
package logger
import (
"sync"
"go.uber.org/zap"
"easywish/config"
"go.uber.org/zap"
)
type Logger interface {
Get() *zap.Logger
Sync() error
}
type loggerImpl struct {
}
func NewLogger() Logger {
return &loggerImpl{}
}
var (
logger *zap.Logger
once sync.Once
)
func GetLogger() *zap.Logger {
func (l *loggerImpl) Get() *zap.Logger {
once.Do(func() {
var err error
cfg := config.GetConfig()
@@ -28,6 +42,6 @@ func GetLogger() *zap.Logger {
return logger
}
func Sync() error {
func (l *loggerImpl) Sync() error {
return logger.Sync()
}