ConsoleEncoder: 添加选项,以将上下文格式化为键=值对
作者: dnephin创建于 2022年3月31日更新于 2025年9月20日
标签enhancement
这是我第一次使用 zap。我曾使用过其他几个 Go 语言的日志库(logrus、go-hclog)。在这两个库中,"人类可读"格式会将上下文格式化为 key=value 对。看到 zap 将整个上下文编码为 JSON 让我有点惊讶。我希望在应用程序在终端(开发和测试)运行时使用 ConsoleEncoder,并在生产环境中切换到 JSONEncoder。这大致上是可行的,但日志中的许多重要细节是上下文的一部分,将上下文格式化为 JSON 使其不太易读。你是否认为在 ConsoleEncoder 中添加一个选项以允许将上下文格式化为 key=value 对而不是 JSON 是合理的?你是否接受一个添加此支持的 PR?
内容来源: uber-go/zap