Tracing Summaries: Go Deep Without Getting Lost
I love traces. There’s something really great feeling about letting yourself spiral into the depths of a chunk of code, and see just how it breaks down. Even better, with Honeycomb, you can jump back and forth from a query to a trace to another query. (We wrote about this just a few weeks ago.)
But navigation in the Honeycomb tracing experience wasn’t quite there. We didn’t really do a great job of letting you know which trace you were looking at, or how to get there.
I’m proud to say that this changes with Tracing Summaries, available from within the Traces tab. We’ve put everything needed to get oriented in this table.
Here’s an example from some internal Honeycomb data. See that tall spike there, the one that shows a span that took just under 300 seconds? It corresponds to the top trace:
We’ve tried to fill this table with information to help you understand what’s going on. The serviceName
and Name
for the root span seem like pretty good choices: they tell you what service was running, and what it was doing. We show the number of spans in the trace — this trace had 59 spans inside it.
On the right is a colorful block: the span summary. Each colorful block corresponds to one Name for a span. We list them alphabetically, and keep the colors consistent between all the traces. In this block, we have six different spans that are MergeRawRows
:
There are also 6 spans named Fetch
. Fetch
is happening.
And without this summary, I don’t think we could have looked down and seen that Fetch
is not only happening here, but also happens in every other trace, too! Comparing the diagrams is a useful way to get a quick overview of the trace. At a glance, I can see if most of the traces are doing the same work, or if something is behaving differently from the others.
Of course, you can also just click on the TraceId
on the right, and jump directly to the trace. (Did we remember to mention that traces are now hyperlinkable? Yeah. Traces are now hyperlinkable. Which means that you can find this trace and share it with your teammates.)
By the way, this trace also shows that traces can have spans that are longer than the root — here, for example, we see that Fetch
actually took 415 seconds. The trace summary still reflects the duration of the root span.
We’re really excited about this feature. As ever, if you have thoughts or questions, we’d love to hear back from you. Click that Intercom icon, send us an email, type it out in our community Slack–we’re here to help!