grafana / explore-profiles

Explore Profiles is a native Grafana application designed to integrate seamlessly with Pyroscope, the open-source continuous profiling platform, providing a smooth, query-less experience for browsing and analyzing profiling data.
GNU Affero General Public License v3.0
17 stars 1 forks source link

Export pprof for Go PGO #33

Open kolesnikovae opened 2 months ago

kolesnikovae commented 2 months ago

The standard pprof export via the UI returns the full profile, which easily exceeds 100MB in size and is practically unusable. Not to mention, such a query typically crashes the queriers and the query-frontend. This complicates the adoption of Pyroscope in PGO scenarios, which rely on profiles in pprof format. The truncation algorithm we use for flame graphs (max nodes limit) is not applicable here because PGO needs the leaf locations of the stack traces.

Recently, we've added a specialized option for Go PGO in the API: https://github.com/grafana/pyroscope/pull/3360 (example, defaults), and made it available in the CLI tool.

It might be beneficial to expose this export method in the UI as well.

grafakus commented 1 month ago

Will the profile exported with the new option be uploadable and processable by /adhocprofiles.v1.AdHocProfileService/Upload endpoint without any change?

Just asking because of the AdHoc view.