处理器

处理器在接收遥测数据之后、导出之前对其进行处理。它们是可选的,默认处于禁用状态。每个处理器都必须针对每个数据源显式启用,并且并非所有处理器都支持每种 signal 类型。对于给定的数据源,可以串联多个处理器,其执行顺序很重要。

WARNING

评估 OpenTelemetry Transformation Language (OTTL) 的组件——Filter 处理器和 Transform 处理器——会将顶层 error_mode 默认设为 ignore。在运行时失败的语句会被跳过,数据会继续通过 pipeline,而不是丢弃该批次。如果你需要让 OTTL 失败显式暴露为 pipeline 错误,请明确设置 error_mode: propagate

Batch Processor

Batch Processor 会将 traces 和指标分组为批次,从而减少传输遥测数据所需的出站连接数量。

Reference: Batch Processor Documentation

Memory Limiter Processor

Memory Limiter Processor 会定期监控 Collector 的内存消耗,并在达到软内存阈值后停止数据处理。它适用于 traces、指标和日志。当处理暂停时,上游组件——通常是 receiver——应当重试,并可能对传入数据施加背压。如果内存消耗达到硬限制,该处理器会触发一次强制垃圾回收周期。

Reference: Memory Limiter Processor Documentation

Resource Detection Processor

Resource Detection Processor 根据 OpenTelemetry 的资源语义约定发现主机资源信息。基于检测到的详细信息,它可以增强或覆盖遥测数据中的资源属性值。该处理器适用于 traces 和指标。

Reference: Resource Detection Processor Documentation

Attributes Processor

Attributes Processor 可修改 spans、日志或指标上的属性。它支持对传入数据进行筛选和匹配,使你能够有选择地包含或排除特定数据,以执行有针对性的操作。

Reference: Attributes Processor Documentation

Resource Processor

Resource Processor 会更新 traces、指标和日志中的资源级属性。

Reference: Resource Processor Documentation

Span Processor

Span Processor 可以根据 spans 的属性重命名 span,或根据 span 名称推导属性。它还支持修改 span 状态,并有选择地包含或排除 spans。该处理器作用于 traces。

Reference: Span Processor Documentation

Kubernetes Attributes Processor

Kubernetes Attributes Processor 会使用 Kubernetes 元数据自动增强 spans、指标和日志的资源属性。它会检测关联的 Kubernetes 资源,提取其元数据,并将其作为资源属性附加到相应的遥测数据上。该处理器适用于 traces、指标和日志。

Reference: Kubernetes Attributes Processor Documentation

Filter Processor

Filter Processor 使用 OpenTelemetry Transformation Language 定义遥测数据的丢弃条件。当任意条件求值为 true 时,匹配的数据将被丢弃。条件可以使用逻辑 OR operator 组合。该处理器适用于 traces、指标和日志。

Reference: Filter Processor Documentation

Cumulative-to-Delta Processor

Cumulative-to-Delta Processor 会将单调的 cumulative-sum 和 histogram 指标转换为其对应的单调 delta 形式。

Reference: Cumulative-to-Delta Processor Documentation

Group-by-Attributes Processor

Group-by-Attributes Processor 通过将具有相同属性的条目重新分配到匹配的 Resource 中,按 attributes 重新组织 spans、日志记录和指标数据点。

Reference: Group-by-Attributes Processor Documentation

Transform Processor

Transform Processor 使用 OpenTelemetry Transformation Language (OTTL) 对遥测数据应用基于规则的修改。对于每种信号类型,它会评估与特定 OTTL Context 关联的一组条件和语句,并按照配置中定义的顺序对传入数据依次执行。

Reference: Transform Processor Documentation

Tail Sampling Processor

Tail Sampling Processor 会在所有 span 都到达后,根据用户定义的策略评估完整 traces。这种基于尾部的方式使你能够有选择地保留感兴趣的 traces,同时降低摄取和存储成本。

Reference: Tail Sampling Processor Documentation

Probabilistic Sampling Processor

Probabilistic Sampling Processor 为高吞吐场景提供了一个更轻量的 Tail Sampling Processor 替代方案。它通过仅保留可配置比例的整体数据吞吐量来降低成本。

Reference: Probabilistic Sampling Processor Documentation

Metric Start Time Processor

Metric Start Time Processor 会为具有 cumulative aggregation temporality 的指标点分配开始时间戳。这对于为 Prometheus Receiver 生成的 cumulative 指标添加开始时间尤其有用,因为该 Receiver 发出的指标点不包含开始时间。

Reference: Metric Start Time Processor Documentation