Go slog

Go社区讨论热烈,标准库log因功能局限性催生了如logrus、zap等第三方日志库。新引入的slog作为结构化日志解决方案,可能改变开发者对第三方库的依赖。slog旨在提供更丰富功能和高性能,未来可能影响现有知名日志库的使用情况。
摘要由CSDN通过智能技术生成

go现有的log库有什么问题


Go社区最近对log/slog搞得热火朝天。按我理解,标准库中的log包 功能拉胯(较大痛点如缺少info/warn等日志级别;只能以纯文本形式,不支持JSON等结构化),于是正式项目大多用第三方日志库如logrus,zap等。

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

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

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

alt

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移入标准库的初始化提交

alt

Go 1.21新特性前瞻-结构化日志库将要进入标准库了

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


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


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

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

Go Team看起来最近有闲,都有心情探讨一下emoji后缀[Lol]…不妨拉一下uber下面的高⭐Go项目,把一些完全可以加到标准库的功能给增加上

alt

本文由 mdnice 多平台发布

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值