-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pkg/query: Group by arbitrary labels #5007
Conversation
🤖 Meticulous spotted visual differences in 413 of 526 screens tested: view and approve differences detected. Last updated for commit 6dd4dc9. This comment will update as new commits are pushed. |
62d76fa
to
f439cc5
Compare
45692a1
to
1955d6a
Compare
1955d6a
to
df9be69
Compare
This will then only select label names for the correct profileType and label matchers
We don't write to it and we don't read it anymore. It's all part of the labels now.
Once we're building the FrostDB query we don't care about the rendering flame graphs anymore and therefore we only pass the group by labels into the selectMerge function. Excluding the possible group by features of flame graphs
f96fbb6
to
6dd4dc9
Compare
@@ -171,6 +171,8 @@ func MustReadAllGzip(t require.TestingT, filename string) []byte { | |||
} | |||
|
|||
func TestConsistency(t *testing.T) { | |||
t.Skipf("skipped, need to think how we want to bring back consistency exports without pprof_labels") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given we don't store the pprof_labels anymore, it's impossible to export the same profile as pprof download from now on.
Previously, Parca allowed to group by all
pprof_labels
at once that are part of profiles.With these changes, Parca allows grouping by
labels
, which now includes thepprof_labels
and the infrastructurelabels
.This allows grouping by
comm
ornamespace
within an icicle graph.Additionally, grouping by only the
trace_id
but not any other labels likethread_id
will be possible.A simple example
Filter for
runtime.gcBgMarkWorker
in all of your infrastructure. Then group the icicle graph byjob
to see the garbage collection byjob
.Before
After
Notice the new rows in the second screenshot now with
job=prometheus
andjob=parca
. Beneath them, we pretty much have the same stack traces that were previously aggregated together.UI
Selecting the labels to group by looks like this now:
We need to think about the Select component within the dropdown... Not ideal right now.