Skip to content

Commit 324c6cc

Browse files
authored
Merge pull request #79248 from max-cx/OBSDOCS-1148
OBSDOCS-1148: Add documentation for routing connector
2 parents 7933346 + 5bf1b89 commit 324c6cc

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

observability/otel/otel-collector/otel-collector-connectors.adoc

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,47 @@ toc::[]
88

99
A connector connects two pipelines. It consumes data as an exporter at the end of one pipeline and emits data as a receiver at the start of another pipeline. It can consume and emit data of the same or different data type. It can generate and emit data to summarize the consumed data, or it can merely replicate or route data.
1010

11+
[id="routing-connector_{context}"]
12+
== Routing Connector
13+
14+
The Routing Connector routes logs, metrics, and traces to specified pipelines according to resource attributes and their routing conditions, which are written as OpenTelemetry Transformation Language (OTTL) statements.
15+
16+
:FeatureName: The Routing Connector
17+
include::snippets/technology-preview.adoc[]
18+
19+
.OpenTelemetry Collector custom resource with an enabled Routing Connector
20+
[source,yaml]
21+
----
22+
config: |
23+
connectors:
24+
routing:
25+
table: # <1>
26+
- statement: route() where attributes["X-Tenant"] == "dev" # <2>
27+
pipelines: [traces/dev] # <3>
28+
- statement: route() where attributes["X-Tenant"] == "prod"
29+
pipelines: [traces/prod]
30+
default_pipelines: [traces/dev] # <4>
31+
error_mode: ignore # <5>
32+
match_once: false # <6>
33+
service:
34+
pipelines:
35+
traces/in:
36+
receivers: [otlp]
37+
exporters: [routing]
38+
traces/dev:
39+
receivers: [routing]
40+
exporters: [otlp/dev]
41+
traces/prod:
42+
receivers: [routing]
43+
exporters: [otlp/prod]
44+
----
45+
<1> Connector routing table.
46+
<2> Routing conditions written as OTTL statements.
47+
<3> Destination pipelines for routing the matching telemetry data.
48+
<4> Destination pipelines for routing the telemetry data for which no routing condition is satisfied.
49+
<5> Error-handling mode: The `propagate` value is for logging an error and dropping the payload. The `ignore` value is for ignoring the condition and attempting to match with the next one. The `silent` value is the same as `ignore` but without logging the error. The default is `propagate`.
50+
<6> When set to `true`, the payload is routed only to the first pipeline whose routing condition is met. The default is `false`.
51+
1152
[id="forward-connector_{context}"]
1253
== Forward Connector
1354

0 commit comments

Comments
 (0)