37 lines
616 B
Go
37 lines
616 B
Go
package logger
|
|
|
|
import (
|
|
"go.uber.org/zap"
|
|
"leafdev.top/Leaf/leaf-library-3/internal/base/conf"
|
|
)
|
|
|
|
type Logger struct {
|
|
Sugar *zap.SugaredLogger
|
|
Logger *zap.Logger
|
|
}
|
|
|
|
func NewZapLogger(config *conf.Config) *Logger {
|
|
var logger *zap.Logger
|
|
var err error
|
|
|
|
if config.Debug.Enabled {
|
|
logger, err = zap.NewDevelopment(zap.AddCallerSkip(1))
|
|
} else {
|
|
logger, err = zap.NewProduction()
|
|
}
|
|
|
|
if err != nil {
|
|
panic(err)
|
|
return nil
|
|
}
|
|
|
|
//defer func(logger *zap.Logger) {
|
|
// err := logger.Sync()
|
|
// if err != nil {
|
|
// panic(err)
|
|
// }
|
|
//}(logger)
|
|
|
|
return &Logger{Sugar: logger.Sugar(), Logger: logger}
|
|
}
|