openzipkin / zipkin

Zipkin is a distributed tracing system
https://zipkin.io/
Apache License 2.0
16.92k stars 3.08k forks source link

Indicate clearly RPC span services #1202

Open codefromthecrypt opened 8 years ago

codefromthecrypt commented 8 years ago

When looking at the UI, the "owning" service of a span is displayed on the left hand side. For example, an RPC span caused by an instrumented client results in the client's service name.

existing

This surprises some folks, and doesn't look congruent with the top section where both service are mentioned. In some cases, this has led people to make local spans to clarify the server-side visually.

It seems we can make a small adjustment to fix this. By visually indicating a client+server span with both sides, the whole screen seems to make more sense. For example, the top counts the service names and the bottom aligns with that count.

proposal

codefromthecrypt commented 8 years ago

copying some people of interest, though it affects all

@eirslett @virtuald @yurishkuro @dsyer @marcingrzejszczak

marcingrzejszczak commented 8 years ago

Oh this would fix us needing to do the "fake span" on the server side in Sleuth (in case the communication would end in backend), wouldn't it?

codefromthecrypt commented 8 years ago

Oh this would fix us needing to do the "fake span" on the server side in Sleuth, wouldn't it?

yeah, that's what I was thinking

yurishkuro commented 8 years ago

I think this is certainly an improvement. I would be careful with two things, though:

  1. an RPC span may contain more than 2 service names, e.g. from annotations added by the routing layer like haproxy. It would be good to restrict the display to only respect service names from rpc client & server
  2. The current display of service name sometimes can't even fit one service name, so perhaps some clever shortening of the names with a tooltip is warranted
codefromthecrypt commented 5 years ago

in haystack, they stack both the client and server service names