package logger import ( "sync" "go.uber.org/zap" "easywish/config" ) var ( logger *zap.Logger once sync.Once ) func GetLogger() *zap.Logger { once.Do(func() { var err error cfg := config.GetConfig() if cfg.Environment == "production" { logger, err = zap.NewProduction() } else { logger, err = zap.NewDevelopment() } if err != nil { panic(err) } }) return logger } func Sync() error { return logger.Sync() }