Go 语言的日志记录功能经历了漫长的发展。过去,开发者依赖简单的标准 log 包或功能强大的第三方库(如 zap 和 zerolog)。随着 Go 1.21 中 log/slog 包的引入,Go 语言现在拥有了一个原生的、高性能的、结构化日志解决方案,旨在成为新的标准。
结构化日志 (Structured Logging) 的核心在于使用键值对(Key-Value Pairs)来记录日志,这使得日志可以被机器解析、过滤、搜索和可靠地分析。这对于观察系统的详细行为和调试问题至关重要。
slog 的设计将日志逻辑与其最终输出分离开来,提供了一个通用的 API,同时允许不同的日志实现来控制输出格式和目的地。


