-
Notifications
You must be signed in to change notification settings - Fork 37
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
Generate 8-byte span IDs to conform with OpenTelemetry spec (instead of 16-byte currently) #171
Comments
Thank you for providing this detail @brentax! For implementing, it may be best to add a new boolean flag to enable 8-byte span IDs instead of 16-byte span IDs, to prevent breakage for current users while still allowing the 16-byte option for those who want it. We'll have to think a bit on this, and have added to our backlog. |
Thanks @JamieDanielson! A boolean flag would work well for our use case. I'll follow this issue for any updates. |
Could we perhaps allow specifying the span id for each command, so that this and other use cases can be catered for? |
This is partially addressed with honeycombio/buildevents-orb#110 |
https://github.com/honeycombio/buildevents-orb/releases/tag/v0.12.0 It's now released. |
Thank you for making this tool! It made it super easy to instrument our CircleCI builds and deploys.
Is your feature request related to a problem? Please describe.
tl;dr of problem:
buildevents cmd
generates 16-byte span IDs, but OpenTelemetry specifies (and the Python library implements) an 8-byte limit for span IDs. This blocks us from connecting Python/OpenTelemetry spans to a buildevents trace.Longer version: I am using buildevents to instrument CircleCI workflows that call many Python scripts. I am using OpenTelemetry to instrument some of those Python scripts. I am trying to include the spans generated in the Python scripts as child spans to those generated by buildevents by using the
HONEYCOMB_TRACE
propagation data sent bybuildevents cmd
. buildevents is generating 16-byte span IDs, but OpenTelemetry only accepts 8-byte span IDs. I have been unable to figure out a way to set a root span in Python's OpenTelemetry implementation with the span IDs I get from buildevents.Describe the solution you'd like
Ideally, buildevents would generate 8-byte span IDs to match the OpenTelemetry spec. I noticed the 16-byte IDs happening here in
cmd_cmd.go
, but it may be happening in other parts of the code.Describe alternatives you've considered
Additional context
I think I covered it all, but happy to answer any questions.
The text was updated successfully, but these errors were encountered: