Skip to content
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

Haystack Support with UUID #1691

Merged
merged 7 commits into from
Aug 5, 2020
Merged

Haystack Support with UUID #1691

merged 7 commits into from
Aug 5, 2020

Conversation

aantono
Copy link
Contributor

@aantono aantono commented Jul 19, 2020

  • Enhancement to the Haystack Codec to add support for common use of UUID as an identifier format
  • Add tag for original Haystack Trace ID to be preserved for continuous stitching between multiple systems (HS -> DD -> HS)

@randomanderson randomanderson added the tag: community Community contribution label Jul 20, 2020
@richardstartin
Copy link
Member

richardstartin commented Jul 21, 2020

hi @aantono we want to support this feature but merged changes yesterday which conflict with this PR. I would be happy to resolve the merge conflict and get this PR to the state where we can merge it, but don't understand the value in trying to convert the haystack trace id to a DDId. I think we could get away with storing the haystack context in the baggage. Am I missing something?

@aantono
Copy link
Contributor Author

aantono commented Jul 21, 2020

Hello @richardstartin ! Thanks for your offer to help resolve the PR conflicts! The reason we try to have a more "educated" conversion is to be able to have a correlation in a deterministic way between a 128-bit UUID used by Haystack (or the same would be true with B3 as well, which uses a 128-bit Hex) and a 64-bit numeric used by Datadog. The conversion is required, as otherwise there is loss of precision happening, especially if a DD instrumented application sits between 2 applications instrumented by Haystack (thus expecting the same Haystack TraceId value to be consistent on the in-coming and out-going traces).

I'm more than happy to discuss the details or brainstorm this further, if you think there is a better alternative to handling this use-case (the less complexity, the better)! ;)

@richardstartin richardstartin self-assigned this Jul 21, 2020
@richardstartin richardstartin merged commit a444001 into DataDog:master Aug 5, 2020
@tylerbenson tylerbenson added this to the 0.60.0 milestone Aug 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tag: community Community contribution
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants