go现有的log库有什么问题


Go社区最近对log/slog搞得热气腾腾。按我了解,规范库中的log包 性能拉胯(较大痛点如短少info/warn等日志级别;只能以纯文本模式,不反对JSON等结构化),于是正式我的项目大多用第三方日志库如logrus,zap等。

Go中结构化日志的综合指南(1)

Go中结构化日志的综合指南(2)

这张来自上文的图片,更全面总结了原有的log包存在的问题


go语言我的项目的log/slog是干什么的


chatGPT的答复:

log/slog 是一个 Go 语言实现的日志库,能够帮忙开发人员在应用程序中记录各种信息和调试音讯,从而更好地理解应用程序的运行状况。它提供了多种不同的日志级别和灵便的配置选项,能够依据须要将日志输入到文件、控制台或其余第三方工具。slog 绝对于规范库中的 log 包来说,领有更丰盛的性能和更高的性能,而且易于应用和扩大。


行将在新版本减少的slog,提供结构化日志性能,很大水平能够认为是第三方日志库的“竞品”。 (slog最开始和slices,maps一样位于试验性质的x/exp包,现已过提案,“转正”进入到规范库)

文档可参考 src/log/slog/doc.go

相干设计由Jonathan Amsterdam提出并开发

相干提案

log/slog: structured, leveled logging

从x/exp移入规范库的初始化提交


Go 1.21新个性前瞻-结构化日志库将要进入规范库了

Go语言爱好者周刊:第 181 期 —— ChatGPT + Golang


诸多出名的第三方日志库前景如何?


slog如果能做得足够优良,兼具logrus的易用和zap,zerolog的高性能(当然恐怕很难既要又要),那前面用户新写我的项目,可能就不会再用这些第三方日志库---这也能够当成掂量这个新package成败的指标。

有点像当初微信电商生态缺失,于是有了补位的有赞微盟。而如果有天想本人做,势必会有竞争。

Go Team看起来最近有闲,都有情绪探讨一下emoji后缀[Lol]…无妨拉一下uber上面的高⭐Go我的项目,把一些齐全能够加到规范库的性能给减少上

本文由mdnice多平台公布