Skip to content
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

feat: flamegraph node time-series #2961

Merged
merged 13 commits into from
Jan 30, 2024
Merged

Conversation

kolesnikovae
Copy link
Collaborator

Resolves #2228

@kolesnikovae kolesnikovae marked this pull request as ready for review January 26, 2024 07:18
@kolesnikovae kolesnikovae requested a review from a team as a code owner January 26, 2024 07:18
@kolesnikovae kolesnikovae changed the title WIP: feat: flamegraph node timeseries feat: flamegraph node time-series Jan 26, 2024
Comment on lines +77 to +80
// Stack trace of the call site. Root at call_site[0].
// Only stack traces having the prefix provided will be selected.
// If empty, the filter is ignored.
repeated Location call_site = 1;
Copy link
Collaborator Author

@kolesnikovae kolesnikovae Jan 26, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Renamed it one more time. As the API it not used anywhere, it should not be an issue

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like it !

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @bryanhuhta for the hackathon this is what we're going to use in all API when clicking on a function to reduce size of pprof and zoom on a single function.

Comment on lines +10 to +23
// CallSiteValues represents statistics associated with a call tree node.
type CallSiteValues struct {
// Flat is the sum of sample values directly attributed to the node.
Flat uint64
// Total is the total sum of sample values attributed to the node and
// its descendants.
Total uint64
// LocationFlat is the sum of sample values directly attributed to the
// node location, irrespectively of the call chain.
LocationFlat uint64
// LocationTotal is the total sum of sample values attributed to the
// node location and its descendants, irrespectively of the call chain.
LocationTotal uint64
}
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please note that at the moment only Total is actually used. We can return all, but we need some toggle in UI that switches between them. Otherwise, the timeline view becomes too busy (especially, if group by is used)

Copy link
Contributor

@cyriltovena cyriltovena left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@kolesnikovae kolesnikovae merged commit 4d4dc67 into main Jan 30, 2024
19 checks passed
@kolesnikovae kolesnikovae deleted the feat/calltree-node-timeseries branch January 30, 2024 04:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Function metric
2 participants