
Grafana 于 2025 年 6 月 12 日发布了 Tempo 2.8,带来显著的内存优化和追踪查询语言 TraceQL 的扩展功能。此次更新是 Grafana 在提升分布式追踪性能和易用性方面持续努力的成果。
最显著的改进是 Tempo 压缩器的峰值内存消耗降低 50% 以上。通过使用 Pyroscope 火焰图进行分析,Grafana 工程师发现高内存使用率高是因激进的内存池策略导致的。通过采用更轻量的内存池策略并利用 Go 语言的垃圾回收机制,显著降低了内存压力,尤其在高吞吐量工作负载下效果显著。这一改进直接惠及那些运营大规模、低延迟系统的团队,帮助他们降低基础设施成本并提升系统稳定性。
在查询功能方面,TraceQL 增加了多项新特性。新的 most_recent=true
查询提示让用户能够以确定性的方式检索最新的追踪信息,这对于调试或识别最近发生的异常情况特别有用。对 span:parentID
过滤器的支持增强了分层追踪分析的能力,能够帮助用户清晰地理解复杂请求链中的因果关系。新的指标函数,如 sum_over_time、topk 和 bottomk,进一步扩展了 Tempo 的分析能力,使团队能够更高效地识别追踪数据中的性能瓶颈或未充分利用的路径。
操作方面的变化包括:使用更安全的默认 HTTP 端口(3200 而非 80)、通过并发刷新加快数据摄入速度、迭代器性能改进以及对属性大小更加严格的限制。此外,Tempo 2.8 还引入了更严格的安全默认配置,支持 Go 1.24 并使用 distroless 容器镜像来减少潜在的攻击面。
社区的反馈总体上是积极的。Grafana 在 X上表示,此次发布带来了内存改进、新的 TraceQL 功能、漏洞修复以及一些重大变更。德意志银行的 Florin Lungu 在 LinkedIn 上评论称,Tempo 2.8 体现了 Grafana 通过优化性能和增强查询能力来提升用户体验的承诺。
Grafana 团队成员 Mike McGovern 在他的帖子中也强调了新的 TraceQL 函数、内存优化和更新的默认设置:
此次更新包含强大的 TraceQL 增强功能、显著的内存优化以及智能的配置更新,提升了性能和可用性。
随着组织不断扩展可观测性基础设施,Tempo 2.8 提供了更高效的性能、更强大的追踪查询功能以及优化的默认设置,是一个极具吸引力的更新。完整的变更日志和升级指南可在官方博客文章和发行说明中找到。
【声明:本文由 InfoQ 翻译,未经许可禁止转载。】
原文链接:
评论