Open zablvit opened 5 years ago
TraceGraph is not just another representation of the timeline. It tries to compact it and remove some superfluous spans.
Regarding the trace above the missing spans have been identified as 'AnnotationSpans' and are therefore skipped (https://github.com/jaegertracing/jaeger-ui/blob/f66f73756ba0e5e5fc51ab60ea3d97b45f7ea692/packages/jaeger-ui/src/model/trace-dag/denseTransforms.js#L87-L92) Spans are made dense with a denseTransform algorithm (more info here #252).
@tiffon: Probably in TraceCompare it makes more sense to skip annotation spans. In this case it would be nice to see them in the TraceGraph. Probably a config provided to denseTransforms which decides which transforms to skip? I think when semantic conventions are considered this is not necessary.
From looking at the comments in the code, the key condition for the "annotation spans" is that they are from the same process. In which case they probably shouldn't be shown in the trace graph either (unless we ensure that they truly represent a network call to itself, i.e. their span.kind values are different (client & server or producer & consumer).
It seems that most spans above have no tags. I would expect at least to see span.kind
for the missing ones. @zablvit: Which library do you use? See also https://opentracing.io/specification/conventions/
This was an example trace to demonstrate the issue.
It seems that most spans above have no tags. I would expect at least to see span.kind for the missing ones.
@copa2 You're correct, adding tags solves the problem obviously.
However this "Compressing/Grouping" functionality is kind of hidden and I would like to have it visible, so I won't have to open an issue for such clarification. I see some nice suggestions for that in #252 like checkboxes for grouping levels, for example.
Still I would expect jaeger to show me full graph and provide options to compact it, rather than showing compacted version and make me wonder, what's going on.
@zablvit Thanks for creating this ticket; this is great feedback.
Requirement - what kind of business use case are you trying to solve?
See All spans in TraceGraph view
Problem - what in Jaeger blocks you from solving the requirement?
It doesn't show all of them in Trace Graph view, however all are visible in Timeline view
Details
Jaeger v1.9.0
Spans 5f5ddc06e9adfbe2 and a9a3acd2ef652f are not visible in Trace Graph view
Timeline view
Trace Graph view
Trace JSON