v0.143.0-sumo-0
Upstream releases
Core: https://github.com/open-telemetry/opentelemetry-collector/releases/tag/v0.143.0
Contrib: https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/tag/v0.143.0
Changelog
Breaking Changes
- chore: deprecating routing processor due to upstream deprecation #1935
Upstream Context
- The
routingprocessorwas deprecated upstream in OpenTelemetry Collector Contrib in v0.116.0. - Upstream recommends migrating to
routingConnector, which provides a clearer and more scalable routing model. - Tracking issue: open-telemetry/opentelemetry-collector-contrib#36616
Migration
The routing connector supports all features of the routing processor and more. However, the configuration is different. The general idea is the same, but there are a few key differences:
- Rather than routing directly to exporters, the routing connector routes to pipelines. This allows for processors to be included after routing decisions.
- The connector is configured within the
connectorssection, rather than theprocessorssection of the configuration. - Usage of the connector in pipelines is different. You must use it as an exporter AND as a receiver in each pipeline to which it can route.
- Configuration is primarily based on OTTL.
- Each route can be evaluated in a different OTTL Context.
Example
Starting from the example configuration below, we can achieve the same result with the routing connector:
processors:
routing:
from_attribute: X-Tenant
default_exporters: [jaeger]
table:
- value: acme
exporters: [jaeger/acme]
exporters:
jaeger:
endpoint: localhost:14250
jaeger/acme:
endpoint: localhost:24250
service:
pipelines:
traces:
receivers: [otlp]
processors: [routing]
exporters: [jaeger, jaeger/acme]connectors:
routing:
match_once: true
default_pipelines: [traces/jaeger]
table:
- context: request
condition: request["X-Tenant"] == "acme"
pipelines: [traces/jaeger/acme]
exporters:
jaeger:
endpoint: localhost:14250
jaeger/acme:
endpoint: localhost:24250
service:
pipelines:
traces:
receivers: [otlp]
exporters: [routing]
traces/jaeger:
receivers: [routing]
exporters: [jaeger]
traces/jaeger/acme:
receivers: [routing]
exporters: [jaeger/acme]Changed
- chore: upgrade collector to 0.143.0 #1935