refactor: made logger a dependency

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

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()
}