pkg/logger 定义框架依赖的最小日志接口,并提供空实现。
noop 实现,保证未配置日志器时不报错。type Level
LevelDebugLevelInfoLevelWarnLevelErrortype Logger interface
DebugInfoWarnErrorWithContext(ctx)WithFields(fields)NewNoop() Logger
本模块没有独立配置结构;通常由业务侧实现自己的 Logger 并注入。
log := logger.NewNoop()
log.Info("service started")
type MyLogger struct{}
func (l *MyLogger) Debug(msg string, args ...any) {}
func (l *MyLogger) Info(msg string, args ...any) {}
func (l *MyLogger) Warn(msg string, args ...any) {}
func (l *MyLogger) Error(msg string, args ...any) {}
func (l *MyLogger) WithContext(ctx context.Context) logger.Logger { return l }
func (l *MyLogger) WithFields(fields map[string]any) logger.Logger { return l }
gin.New() 默认注入 logger.NewNoop()。e.WithLogger(customLogger) 替换为业务日志实现。e := gin.New() e.WithLogger(&MyLogger{})