Я хочу использовать go-kit logger lib с zap , и я хочу, чтобы в этой функции он возвращал экземпляр zap.logger, чтобы я мог использовать его какследующее: (используя функциональность zap), например
logger.Info
или
logger.WithOptions
и т. д.
Я пытаюсь сследующий, чтобы вернуть интерфейс zap, но он не работает, методы недоступны, есть идеи, что мне здесь не хватает?
func NewZapLogger() zap.Logger {
cfg := zap.Config{
Encoding: "json",
Level: zap.NewAtomicLevelAt(zapcore.DebugLevel),
OutputPaths: []string{"stderr"},
ErrorOutputPaths: []string{"stderr"},
EncoderConfig: zapcore.EncoderConfig{
MessageKey: "message",
LevelKey: "level",
EncodeLevel: zapcore.CapitalLevelEncoder,
TimeKey: "time",
EncodeTime: zapcore.ISO8601TimeEncoder,
CallerKey: "caller",
EncodeCaller: zapcore.FullCallerEncoder,
},
}
logger, _ := cfg.Build()
sugarLogger := logz.NewZapSugarLogger(logger, zap.InfoLevel)
return sugarLogger.
}