-
Notifications
You must be signed in to change notification settings - Fork 894
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Request for adoption in OTel SDKs of the W3C Trace Context Level 2 spec (which is now in Candidate Recommendation status) #3411
Comments
The concrete changes here that are relevant for OTel:
|
Late EDIT: This is wrong. See comment below #3411 (comment) |
I wonder if we should strongly suggest all SIGs do generate random ids (if still there any SIG that doesn't). |
no. unknown flags SHOULD be set to 0 |
I believe we should add Same issue is written at least once: open-telemetry/opentelemetry-proto#382 (I'm pretty sure there's another copy of this written somewhere else). |
Now that the following is done:
can this item, W3C Trace Context Level 2, be adopted in the specifications ? Looking to implement it for opentelemetry-cpp. |
This comment was marked as outdated.
This comment was marked as outdated.
The Trace Context level 2 is in candidate recommendation phase and the W3C is actively looking for adopters. It would be very helpful to us (w3c working group) if OpenTelemetry (including opentelemetry-cpp) can implement this at least experimentally to ensure it works as intended. |
There is a chicken and eggs problem with the process then. Preparation work has been done already: I am waiting for the opentelemetry-specifications to change, to mention that supporting level 2 is ok (experimental maybe), to uncomment that code and actually support level 2 in the implementation. |
Currently implementations use either the right most 63 or 64 bits for sampling. We should all adopt 56 bit but only once this is adopted? |
What are you trying to achieve?
As part of the W3C DT group, today we published the Level 2 (aka version 2) of the W3C Trace Context spec in "Candidate Recommendation" (CR) status: https://www.w3.org/TR/trace-context-2/.
Please see the above link for full details, to summarize here a main change from the Level 1 version (which OpenTelemetry has already adopted) is that the Level 2 spec includes a new trace flag in the traceparent header called the "random trace id" flag. When this flag is set, it conveys that at least the right-most 7 bytes of the trace ID have been generated in a random (or pseudo-random) manner. This can be helpful for samplers / sharding logic etc. as with this they can get stronger guarantees that traceID has been generated in a random/pseudo-random manner.
What did you expect to see?
Based on the above, want to update the OpenTelemetry community on this spec for your evaluation and to consider prototyping/adoption in OTel SDKs. Assuming the traceID is already being generated in a pseudo-random manner, this would involve setting the above new trace flag to reflect it.
Note: The exit criteria for this standard moving from the current "Candidate Recommendation" status to "Recommendation" status is to have at least two implementations.
Additional context.
https://www.w3.org/TR/trace-context-2/ has the details.
The text was updated successfully, but these errors were encountered: