shashank created CAMEL-26683:
--------------------------------
Summary: camel-opentelemetry - OpenTelemetryTracingStrategy only
recognises the correlation context processors when no other strategy wrapped
them
Key: CAMEL-26683
URL: https://issues.apache.org/jira/browse/CAMEL-26683
Project: Camel
Issue Type: Improvement
Components: camel-opentelemetry
Reporter: shashank
Assignee: shashank
Found while designing the exchange sanitizer (CAMEL-26630, apache/camel#29296),
from Claus's review there.
{{OpenTelemetryTracingStrategy}} decides whether to activate the exchange's
context with {{target instanceof GetCorrelationContextProcessor || target
instanceof SetCorrelationContextProcessor}} (lines 94 and 136). It only looks
at the outermost {{target}}. When another {{InterceptStrategy}} registered
before it wraps the processor, the check no longer matches and the strategy
treats those processors as ordinary steps.
camel-telemetry handles the same case by walking {{DelegateProcessor}} until it
finds what it looks for
({{TraceProcessorsInterceptStrategy.isEndpointSending}}). The same small loop
would make the check independent of other strategies.
camel-opentelemetry is deprecated in favour of camel-opentelemetry2, which has
no such type check, so this is a small fix for users who still run the
deprecated component together with other intercept strategies.
Suggested fix: unwrap {{DelegateProcessor}} in both checks, with a test that
registers a wrapping strategy before the OpenTelemetry one.
_Filed with Claude Code on behalf of allthingssecurity._
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)