Transform
Description
The Transform processor allows for configuring advanced conditional transformation rules on incoming telemetry.
Supported Types
✓
✓
✓
Configuration Table
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: ignoreLast updated
Was this helpful?