处理器
处理器在接收遥测数据之后、导出之前对其进行处理。它们是可选的,默认处于禁用状态。每个处理器都必须针对每个数据源显式启用,并且并非所有处理器都支持每种 signal 类型。对于给定的数据源,可以串联多个处理器,其执行顺序很重要。
评估 OpenTelemetry Transformation Language (OTTL) 的组件——Filter 处理器和 Transform 处理器——会将顶层 error_mode 默认设为 ignore。在运行时失败的语句会被跳过,数据会继续通过 pipeline,而不是丢弃该批次。如果你需要让 OTTL 失败显式暴露为 pipeline 错误,请明确设置 error_mode: propagate。
目录
Batch ProcessorMemory Limiter ProcessorResource Detection ProcessorAttributes ProcessorResource ProcessorSpan ProcessorKubernetes Attributes ProcessorFilter ProcessorCumulative-to-Delta ProcessorGroup-by-Attributes ProcessorTransform ProcessorTail Sampling ProcessorProbabilistic Sampling ProcessorMetric Start Time ProcessorBatch 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