问题标签 [go-zap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 如何使用 go.uber.org/zap lib 以不同的日志级别打印不同的颜色,并根据日志级别将日志附加到不同的文件?
我开始为我的 Go 项目使用 zap 日志库。我想根据日志级别将不同的颜色打印到 tty 控制台。
我发现zap/internal/color
包可以为字符串显示不同的颜色,但我想用不同的颜色更改日志级别。
我还想将日志写入一些具有不同日志级别的日志文件。
如何初始化和配置 zap 记录器?
go - 如何为滚动文件系统日志配置 uber-go/zap 记录器?
如何配置uber-go/zap
logger api 以将日志附加到指定的文件路径。它可以像滚动文件附加器(基于文件大小或日期)一样工作而不影响性能吗?
go - Zap logger 打印到控制台和日志文件
我已将 Zap 与我的 go 应用程序集成,我们将日志打印在两个日志文件中,并且我还使用 Lumberjack 进行日志轮换。但我也试图在控制台中显示日志,但这种情况没有运气。以下是我在 logger.go 中的代码
我已经尝试附加输出路径,但它不起作用。
go - 如何向 ZAP 日志条目添加新列/字段?
我有以下日志结构:
您可以在此日志记录片段中看到五种类型的信息。有日期/时间、日志级别、发生、消息和 JSON 字段([STDERR] 字段除外)。这意味着我的日志结构中有五列。我想添加一个带有关键pid和进程(来自 JSON)的新列。我应该如何使用 ZAP 编码器和配置来做到这一点?我在 ZAP 文档中没有找到解决方案。
我使用以下代码将字段添加到日志记录:
logger = logger.With(zap.Field{Key: "pid", Type: zapcore.Int64Type, Integer: int64(os.Getpid())})
但是 pid 字段的值转到 JSON(您可以在上面看到),我想在新列中看到它。ZAP 中有一种简单的方法可以做到这一点吗?
在前面的示例中,我想要的结构如下:
go - 如何测试从自定义配置构建的 zap Logger 的日志记录?
我有一个从自定义配置(即config.Build()
)生成的 Zap 记录器。我想通过调用来测试记录器,例如,logger.Info()
在测试方法中并断言结果以查看它是否符合配置集。我怎样才能做到这一点?
代码示例:
go - Uber Zap logger not printing caller information in the log statement
I am trying to put the same message to console and the log files at the same time with custom encoder for config. In the process I want to display the caller information but the same is not being displayed even if I have used caller
key as suggested in the documentation.
Below is the sample code for the same
Any thoughts why the caller information is not being displayed?
go - 具有自定义消息编码器的 Uber zap 日志记录
我正在使用下面的代码在控制台上转储日志,并使用 Uber zap logger 记录文件。如何拥有自定义消息编码器,以便消息的输出格式如下?
{"severity":"DEBUG","message":"Dec 12, 2018 19:52:39 [log.go:77] Sample debug for log file and console"}
下面是我用来在控制台上转储日志的代码。
任何想法如何实现预期的输出?我们需要以上述格式将消息放在控制台上。
go - 如何初始化一次 zap 记录器并在其他 Go 文件中重用它?
我正在尝试从漂亮的 Logrus 迁移我的应用程序(对调试非常有帮助)并引入 Uber 日志框架 Zap。
使用 Logrus,我可以只初始化一次记录器并从其他 Go 文件中重用它,例如:
从其他 Go 文件中,我无需任何其他初始化即可重用该记录器:
我的问题是:使用 Zap 日志框架,我如何在主函数中初始化日志并使用另一个 Go 文件中的记录器?
go - 如何在 go-kit 中使用 zap logger?
我想将go-kit logger lib 与zap一起使用,我希望它在这个函数中返回 zap.logger 的实例,我将能够像下面这样使用它:(使用 zap 功能)像
logger.Info
或者
logger.WithOptions
ETC
我尝试使用以下方法返回 zap 接口,但它不起作用,方法不可用,知道我在这里缺少什么吗?
go - 如何在不使用字段的情况下在 Uber Zap 中记录键/值对
我正在使用 zap 库进行日志记录,我尝试了一些简单的场景,我想在不使用Fields
. 不幸的是,它不起作用。
代码
有没有办法在不提供Field
参数的情况下记录任何键/值对?
我尝试删除message
配置中的条目但没有成功(它省略了所有消息)