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: ignore
Last updated
Was this helpful?