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:
screenshot of tracing summary table
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:
screenshot of span summary
There are also 6 spans named Fetch. Fetch is happening.

Mean Girls meme "stop trying to make Fetch happen"
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.)
screenshot of trace duration query
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!