Transform

Description

The Transform processor allows for configuring advanced conditional transformation rules on incoming telemetry.

Supported Types

Metrics
Logs
Traces

Configuration Table

Parameter
Type
Default
Description

telemetry_type*

enum

Logs

Specifies the type of telemetry to which transformation statements are applied. One of Logs , Metrics , or Traces

statements

strings

The OTTL statements to execute on matching telemetry. The statements are executed in order from top to bottom.

conditions

strings

OTTL conditions to determine if statements should run. If any condition evaluates to true on a given log, metric, or trace, the OTTL statements will be executed on that telemetry. Individual statements may still add their own where clauses.

error_mode*

enum

ignore

One of ignore , silent , or propagate . Determines how error handling will be performed during processing. Ignore will ignore errors, log the error, and continue processing. Silent will ignore errors without logging them, and continue processing. Propagate will halt processing when an error occurs and return errors up the pipeline.

metrics_context

enum

datapoint

Either datapoint or metric . This determines the context at which the transform statements are executed on metrics. Read about OTTL contexts here.

traces_context

enum

span

Either span or spanevent . This determines the context at which the transform statements are executed on traces. Read about OTTL contexts here.

*required field

Basic Example Configuration

Below is an example of a basic Transform processor configuration using multiple statements and one condition.

Standalone Processor

apiVersion: bindplane.observiq.com/v1
kind: Processor
spec:
    parameters:
        - name: telemetry_type
          value: Logs
        - name: statements
          value:
            - set(attributes["myNewFieldKey"], "myNewFieldValue")
            - delete_key(attributes, "myUnwantedKey")
        - name: conditions
          value:
            - attributes["service.name"] = "my-service-name"
        - name: error_mode
          value: ignore

Last updated

Was this helpful?