6.2 Configuring the Pipelines
Exercise
元の traces パイプラインをルーティングを使用するように更新する:
routingを有効にするには、元のtracesパイプラインを更新して、routingのみをエクスポーターとして使用します。これにより、すべてのスパンデータが Routing Connector を経由して評価され、接続されたパイプラインに転送されます。また、すべての プロセッサーを削除し、空の配列([])に置き換えます。これは、traces/route1-regularとtraces/route2-securityパイプラインで処理されるようになり、各ルートに対してカスタム動作が可能になるためです。traces:の設定は次のようになります
既存の traces パイプラインの下に route1-regular と route2-security の両方のトレースパイプラインを追加する:
Route1-regular パイプラインを設定する: このパイプラインは、コネクターのルーティングテーブルに一致しないすべてのスパンを処理します。 これは唯一のレシーバーとして
routingを使用し、元の traces パイプラインからのconnectionを通じてデータを受信することに注意してください。route2-security パイプラインを追加する: このパイプラインは、ルーティングルールの
"[deployment.environment"] == "security-applications"ルールに一致するすべてのスパンを処理します。このパイプラインもレシーバーとしてroutingを使用しています。このパイプラインをtraces/route1-regularの下に追加します。
otelbin.io を使用して Agent の設定を検証します。参考として、パイプラインの traces: セクションは次のようになります
%%{init:{"fontFamily":"monospace"}}%%
graph LR
%% Nodes
REC1( otlp <br>fa:fa-download):::receiver
PRO1(memory_limiter<br>fa:fa-microchip):::processor
PRO2(memory_limiter<br>fa:fa-microchip):::processor
PRO3(resource<br>fa:fa-microchip<br>add_mode):::processor
PRO4(resource<br>fa:fa-microchip<br>add_mode):::processor
PRO5(batch<br>fa:fa-microchip):::processor
PRO6(batch<br>fa:fa-microchip):::processor
EXP1(  debug  <br>fa:fa-upload):::exporter
EXP2(  file  <br>fa:fa-upload<br>traces):::exporter
EXP3(  debug  <br>fa:fa-upload):::exporter
EXP4(  file  <br>fa:fa-upload<br>traces):::exporter
ROUTE1( routing <br>fa:fa-route):::con-export
ROUTE2( routing <br>fa:fa-route):::con-receive
ROUTE3( routing <br>fa:fa-route):::con-receive
%% Links
subID1:::sub-traces
subID2:::sub-traces
subID3:::sub-traces
subgraph " "
direction LR
subgraph subID1[**Traces**]
REC1 --> ROUTE1
end
subgraph subID2[**Traces/route2-security**]
ROUTE1 --> ROUTE2
ROUTE2 --> PRO1
PRO1 --> PRO3
PRO3 --> PRO5
PRO5 --> EXP1
PRO5 --> EXP2
end
subgraph subID3[**Traces/route1-regular**]
ROUTE1 --> ROUTE3
ROUTE3 --> PRO2
PRO2 --> PRO4
PRO4 --> PRO6
PRO6 --> EXP3
PRO6 --> EXP4
end
end
classDef receiver,exporter fill:#8b5cf6,stroke:#333,stroke-width:1px,color:#fff;
classDef processor fill:#6366f1,stroke:#333,stroke-width:1px,color:#fff;
classDef con-receive,con-export fill:#45c175,stroke:#333,stroke-width:1px,color:#fff;
classDef sub-traces stroke:#fbbf24,stroke-width:1px, color:#fbbf24,stroke-dasharray: 3 3;