You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Jaeger supports the notion of a span with multiple parents. In Jaeger we can assign references to other spans (what in OTEL are links) and a type can be specified for each reference. Jaeger types are based on opentracing, they can take one of two values CHILD_OF or FOLLOWS_FROM.
When using the Jaeger to OTEL translation, the first CHILD_OF reference is set as the parent spanID, and all other CHILD_OF references are set as regular links. When going the other way around, from OTEL to Jaeger, since in OTEL there's no notion of link type that matches the Jaeger reference type, all the links are set to be FOLLOW_FROM.
To summarise, the reference type is lost in translation. Jaeger spans with multiple parents that are translated to OTEL and then back, are returned with a single parent with the missing parents converted instead to FOLLOW_FROM.
alejandrodnm
changed the title
When translating from Jaeger to OTEL Include the jaeger reference type as attribute
[translator/jaeger] When translating from Jaeger to OTEL Include the jaeger reference type as attribute
Sep 23, 2022
alejandrodnm
changed the title
[translator/jaeger] When translating from Jaeger to OTEL Include the jaeger reference type as attribute
[pkg/translator/jaeger] When translating from Jaeger to OTEL Include the jaeger reference type as attribute
Sep 23, 2022
alejandrodnm
changed the title
[pkg/translator/jaeger] When translating from Jaeger to OTEL Include the jaeger reference type as attribute
[translator/jaeger] When translating from Jaeger to OTEL Include the jaeger reference type as attribute
Sep 23, 2022
Is your feature request related to a problem? Please describe.
Jaeger supports the notion of a span with multiple parents. In Jaeger we can assign references to other spans (what in OTEL are links) and a type can be specified for each reference. Jaeger types are based on opentracing, they can take one of two values
CHILD_OF
orFOLLOWS_FROM
.When using the Jaeger to OTEL translation, the first
CHILD_OF
reference is set as the parent spanID, and all otherCHILD_OF
references are set as regular links. When going the other way around, from OTEL to Jaeger, since in OTEL there's no notion of link type that matches the Jaeger reference type, all the links are set to beFOLLOW_FROM
.To summarise, the reference type is lost in translation. Jaeger spans with multiple parents that are translated to OTEL and then back, are returned with a single parent with the missing parents converted instead to
FOLLOW_FROM
.Describe the solution you'd like
To follow the semantic conversion for compatibility with opentracing and store the reference type as an attribute to the links when converting from Jaeger to OTEL in https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/pkg/translator/jaeger .
This information should then be used when converting back from OTEL to Jaeger to set the correct reference type.
Describe alternatives you've considered
Basically doing it ourselves after using the translator.
Additional context
This was discussed with the Jaeger maintainers in jaegertracing/jaeger#3919 (comment)
The text was updated successfully, but these errors were encountered: