jaegertracing/jaeger-ui

[Feature]: Colormap log markers by tag

SOF3 opened this issue · 7 comments

SOF3 commented

Requirement

As a Jaeger user workign with large traces with many logs on each span, I want to be able to distinguish various types of logs more easily.

Problem

When I see a large span like this, it is difficult to figure out what is going on at a glance
image

Proposal

Add a button "Log colormap" in the trace detail page, probably next to the "Find" menu.

The button opens a dialog in which the user can select a "key", either a dropdown based on all distinct values from .spans[].logs[].keyor a manual input dialog.

When this dialog is closed, all log markers

Open questions

No response

SOF3 commented

I did a simple prototype locally using hsl(hash(tag) % 360, 100%, 40%), the above trace would become like this
image

Why do you need to distinguish them? What are you trying to glean from the ticks & colors?

SOF3 commented

Let's say the span is a coroutine that polls events from other coroutines, and the tag is the name of the source coroutine or the type of event.

SOF3 commented

Alternatively, the ability to distinguish logs by level (error/info) would be useful too.

Are you interested in submitting a PR to implement this?

Regarding the UI experience, I would do it this way:

  • Add a Settings icon ⚙️ at the end of the header (to the right from Archive Trace button)
  • In the popup dialog have an entry 'Color log ticks by: [tag]'
  • Have that setting persisted in local storage so that it's sticky for the user
SOF3 commented

Sure. I am not sure if we want to persist it in local storage though; how would that interact with multiple tabs opened concurrently?

Why would that be a problem? If user changes the setting, already opened tabs would not change, but if they are reloaded then they will reflect the setting.