如何使用 go.uber.org/zap lib 以不同的日志级别打印不同的颜色,并根据日志级别将日志附加到不同的文件?

sav*_*ior 7 logging go go-zap

我开始在我的 Go 项目中使用 zap 日志库。我想根据日志级别将不同的颜色打印到 tty 控制台。

我发现该zap/internal/color包可以显示不同颜色的字符串,但我想用不同的颜色更改日志级别。

我还想将日志写入一些具有不同日志级别的日志文件。

如何初始化和配置 zap 记录器?

小智 6

刚刚遇到了同样的问题,这里是一些启用颜色的代码片段:

config := zap.NewDevelopmentConfig()
config.EncoderConfig.EncodeLevel = zapcore.CapitalColorLevelEncoder
logger, _ := config.Build()

logger.Info("Now logs should be colored")
Run Code Online (Sandbox Code Playgroud)

参考: https: //github.com/uber-go/zap/pull/307