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

Activating ClientServerSameSpan resulted in duplicated binnary annotations #81

Closed
embs opened this issue Sep 21, 2017 · 4 comments
Closed

Comments

@embs
Copy link

embs commented Sep 21, 2017

Setting

zipkin.ClientServerSameSpan(true)

in microservices-demo/user#53 caused the shared span to come up with duplicated http.method and http.url binnary annotations (fames marked with 3 in figure below):

img

Is there a way to make the tracer not to add annotations if their keys are already present in the span?

Thanks!

@codefromthecrypt
Copy link

codefromthecrypt commented Sep 21, 2017 via email

@embs
Copy link
Author

embs commented Sep 21, 2017

Thanks, @adriancole.

I wonder why there are no duplicated binary annotations for traces between Java <-> Java (instrumented with sleuth) services interactions which are also sharing span (at least as I can tell):

selection_004

This span (managed by sleuth) doesn't seem to be in accordance with this assertion:

At least htrace, opentracing, google cloud trace and sleuth use single-host spans.

As it looks like that both nodes are writing to the same span.

Do you know how sleuth manages not to adding dupes into the bin annotations?

@codefromthecrypt
Copy link

codefromthecrypt commented Sep 22, 2017 via email

@embs
Copy link
Author

embs commented Sep 25, 2017

Thank you again for the clarifications, @adriancole.

Then I'm closing this issue as

  1. Duplicated annotations keys is not a real problem
  2. Improve UX when multiple binary annoations exist in the same span, with the same key openzipkin/zipkin#989 exists for handling duplication within UI

As per

The different values here are largely due to a bug where one tracer is only writing the path for the http.url tag (we have http.path tag)

I'm aware that the wrong value is being written by the go instrumentation code but I'm not sure in which part of it the bug lives. I'll try and file an issue as soon as I discover it out.

@embs embs closed this as completed Sep 25, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants