如何在 Uber Zap 中记录键/值对而不使用字段

我正在使用 zap 库进行日志记录,并尝试一些简单的场景,其中我想在不使用Fields. 不幸的是它不起作用。


代码

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.ShortCallerEncoder,

   },

}


logger,_ := cfg.Build()


logger.Debug("This is a DEBUG message”)       // works


logger.Info("This is an INFO message”, ”aaa”) // Error

有没有办法在不提供Field参数的情况下记录任何键/值对?


我尝试删除message配置中的条目但没有成功(它忽略了所有消息)


慕桂英4014372
浏览 106回答 1
1回答

开满天机

[我]有没有办法在没有 key 和 val 的情况下使用 zap ?不。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go