[
https://issues.apache.org/jira/browse/CAMEL-23312?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jiri Ondrusek updated CAMEL-23312:
----------------------------------
Description:
The SpanLifecycleManager.create() API lacks a SpanKind parameter:
Span create(String spanName, Span parent, SpanContextPropagationExtractor
extractor);
This causes all camel-opentelemetry2 spans to default to INTERNAL instead of
the
correct CLIENT/SERVER/PRODUCER/CONSUMER types.
Expected: HTTP client calls → SpanKind.CLIENT, server endpoints →
SpanKind.SERVER
Actual: All spans → SpanKind.INTERNAL
The legacy camel-opentelemetry works around this by using custom methods like
startSendingEventSpan() that accept org.apache.camel.tracing.SpanKind.
was:
The SpanLifecycleManager.create() API lacks a SpanKind parameter:
Span create(String spanName, Span parent, SpanContextPropagationExtractor
extractor);
This causes all camel-opentelemetry2 spans to default to INTERNAL instead of
the
correct CLIENT/SERVER/PRODUCER/CONSUMER types.
Expected: HTTP client calls → SpanKind.CLIENT, server endpoints →
SpanKind.SERVER
Actual: All spans → SpanKind.INTERNAL
The legacy camel-opentelemetry works around this by using custom methods like
startSendingEventSpan() that accept org.apache.camel.tracing.SpanKind.
Proposed fix:
Add SpanKind parameter to the API:
Span create(String spanName, SpanKind kind, Span parent,
SpanContextPropagationExtractor extractor);
> Opentelemetry2: SpanLifecycleManager.create() missing SpanKind parameter
> causing incorrect span types
> -----------------------------------------------------------------------------------------------------
>
> Key: CAMEL-23312
> URL: https://issues.apache.org/jira/browse/CAMEL-23312
> Project: Camel
> Issue Type: Improvement
> Components: camel-opentelemetry
> Affects Versions: 4.18.0
> Reporter: Jiri Ondrusek
> Assignee: Jiri Ondrusek
> Priority: Major
>
> The SpanLifecycleManager.create() API lacks a SpanKind parameter:
> Span create(String spanName, Span parent, SpanContextPropagationExtractor
> extractor);
> This causes all camel-opentelemetry2 spans to default to INTERNAL instead
> of the
> correct CLIENT/SERVER/PRODUCER/CONSUMER types.
> Expected: HTTP client calls → SpanKind.CLIENT, server endpoints →
> SpanKind.SERVER
> Actual: All spans → SpanKind.INTERNAL
> The legacy camel-opentelemetry works around this by using custom methods
> like
> startSendingEventSpan() that accept org.apache.camel.tracing.SpanKind.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)