InfoQ

Grafana Tempo 3.1 Adds Query-Based Trace Redaction and Sampling-Aware TraceQL Metrics

8.5内容质量
Grafana Tempo 3.1 Adds Query-Based Trace Redaction and Sampling-Aware TraceQL Metrics

TL;DR · AI 摘要

Grafana Tempo 3.1引入基于TraceQL查询的敏感数据擦除和采样感知指标,使查询性能提升近两倍。

核心要点

  • Tempo 3.1支持通过TraceQL查询自动擦除敏感数据,无需手动枚举trace ID
  • 新增TLS和SCRAM-SHA系列等SASL机制,增强Kafka客户端安全性
  • vParquet5默认块格式使简单指标查询速度提升近两倍

结构提纲

按章节快速跳转。

  1. 介绍Tempo 3.1主要新增功能及性能提升数据

  2. 通过TraceQL查询实现自动化数据脱敏,替代手动ID列表方式

  3. ·Kafka架构增强

    支持TLS加密和多种SASL认证机制,提升安全性

  4. vParquet5格式使查询速度提升近两倍

  5. TraceQL指标自动修正采样数据偏差

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • Grafana Tempo 3.1更新
    • 核心功能
      • 查询驱动擦除
      • 采样感知指标
    • 架构改进
      • Kafka TLS支持
      • vParquet5格式
    • 安全增强
      • SCRAM-SHA系列
      • mTLS选项

金句 / Highlights

值得收藏与分享的关键句。

#Grafana#Tempo#DevOps#监控工具
打开原文

Grafana Tempo 3.1 增加基于查询的追踪数据脱敏和采样感知的 TraceQL 指标 - InfoQ

InfoQ 首页 News Grafana Tempo 3.1 增加基于查询的追踪数据脱敏和采样感知的 TraceQL 指标

DevOps

InfoQ 认证高绩效团队计划(在线,11月17日):为您的团队构建更清晰的运营模型。

Grafana Tempo 3.1 增加基于查询的追踪数据脱敏和采样感知的 TraceQL 指标

2026年10月15日 3分钟阅读

by

  • Claudio Masolo

#### 关注我们

Youtube

232K 粉丝

Linkedin

26K 粉丝

Instagram

新

RSS

19K 读者

X

57.1k 粉丝

Facebook

21K 点赞

Bluesky

收听本文 -

0:00

音频准备播放

您的浏览器不支持音频元素。

正常

1.25x

1.5x

喜欢

新下拉阅读列表

  • 阅读列表

Grafana Labs 已发布 Tempo 3.1,这是 3.0 架构的首次小版本更新。该版本为 Kafka 客户端增加了 TLS 和额外的 SASL 机制,允许操作人员使用 TraceQL 查询而非追踪 ID 列表来脱敏追踪数据,并引入了一个实验性查询时提示功能,用于修正采样数据的 TraceQL 指标。vParquet5 也成为了默认的块格式。根据 Grafana 的说法,简单的指标查询现在运行速度接近原来的两倍。

此次发布基于 2026 年 6 月发布的 Tempo 3.0,该版本将 Kafka 兼容架构(代号 Project Rhythm)设为微服务部署的默认选项。在该架构设计中,分发器会写入 Kafka 主题。块构建器会消费该主题以将 Parquet 块写入对象存储,而实时存储会消费该主题以提供最近的追踪数据。Ingester 和 Compactor 被移除,取而代之的是后端调度器和工作器。Grafana 表示,移除复制因子 3 将存储需求从 3 到 3.5 倍的追踪数据量减少到单副本。单体模式仍保持 Kafka 免费。

Grafana Tempo 架构

由于 Kafka 现在处于关键路径上,3.0 客户端的限制成为了一个问题。它仅支持通过未加密连接的 SASL PLAIN,因此任何需要 TLS 的代理都会拒绝它。Tempo 3.1 增加了 TLS,包括可选的 mTLS,以及 SCRAM-SHA-256、SCRAM-SHA-512、OAUTHBEARER 和 AWS_MSK_IAM。新的 client_rack 选项启用了机架感知获取(KIP-392),因此块构建器、实时存储和指标生成器可以从同一可用区的副本读取数据,避免跨区传输费用。这需要配置了机架 ID 的代理。新的 producer_compression 选项接受 none、gzip、snappy、lz4 或 zstd;未设置时默认使用 snappy。Grafana 指出,结合 TLS,这使得 Azure Event Hubs 可作为后端使用,因为它仅接受 gzip。这三项更改均来自社区贡献者。

在 3.0 版本中通过 tempo-cli redact 引入的追踪信息抹除功能,此前需要枚举追踪 ID。令牌或账户号码等敏感值通常会出现在比实际可列出的更多追踪记录中。3.1 版本的命令支持使用 TraceQL 查询,并新增了 --dry-run 参数,该参数可统计匹配项数量而不会修改数据块。Grafana 将语法限制为一个 spanset 过滤器,支持对 resource.* 和 span.* 属性进行等值比较,同时支持 && 和 || 运算符。这是由于重写操作无法撤销。--start 和 --end` 参数可缩小时间范围,这很重要,因为在抹除操作期间,Tempo 会暂停租户的压缩处理。Grafana 提示较旧的 worker 会忽略时间窗口,会删除每个数据块中的所有匹配项,但不会报错。这些参数应在每个调度器和 worker 运行 3.1 版本时仅使用一次。

在 3.0 版本中成为通用功能的 TraceQL 指标新增了三项改进。实验性提示 (extrapolate=true) 会根据 tracestate 中的采样率进行扩展,这遵循了 OpenTelemetry 的概率采样规则。在 50% 采样率下,每个存储的跨度会被计为两个。没有记录采样率的跨度计为一个,因此部分采用不会影响其他服务。该功能适用于:rate、count_over_time、sum_over_time、avg_over_time、histogram_over_time、quantile_over_time 和 compare,但不适用于 min_over_time 或 max_over_time。该功能需要 vParquet4 或更高版本,并以与 3.0 版本中 metrics-generator 的 enable_tracestate_span_multiplier 设置相同的方式读取采样率,因此即席查询和预聚合序列应保持一致。其次,+、-、* 和 / 现在可以在指标查询和标量之间进行运算,因此错误率可以简化为一个查询。第三,仅跨度的获取路径(在 3.0 版本中为实验性功能)现在在 vParquet5 数据块中默认启用。在一个预热测试中,{ } | rate() 的执行时间略少于原来的一半。

其他新增功能包括在 trace-by-ID v2 接口上的实验性跨度修剪选项,该选项会将相似的叶跨度合并为一个汇总跨度,并携带计数和持续时间统计信息。同一接口新增了 TraceQL 过滤功能。新增了实验性 POST /api/v2/traces/diff 接口,该接口可比较两个追踪记录,并返回一个紧凑的摘要而非跨度级别的补丁。该接口通过 gcx、tempo-cli 和 Tempo MCP 服务器提供,Grafana 表示较小的有效载荷有助于基于 LLM 的调查。metrics-generator 新增了对过期服务图边的 unmatched_span_kind 标签、对重命名后的 OpenTelemetry db.system.name 属性的支持,以及 Grafana 报告可在其服务图基准测试中将每跨度分配减少至零的池化标签缓冲区。

作者部分主容器

关于作者

章节标题

每个作者的主容器

#### Claudio Masolo

显示更多

显示更少

#### 本内容属于 DevOps 主题

##### 相关主题:

  • DevOps
  • Grafana
  • 可观测性
  • 相关编辑内容
  • 相关赞助商
  • 相关赞助商 2026 年 10 月 29 日,东部时间下午 1 点 从 Token 到 Feature:为 AI 辅助工程构建成本归因架构 演讲者:Martin Reynolds - Harness 的首席技术官,Barani Mohandoss - Trimble 的云治理、FinOps 与 E-工具总监

InfoQ 新闻通讯

每周五发送 InfoQ 最新内容汇总。加入超过 250,000 名高级开发者的社区。查看示例

我们保护您的隐私。 /think