This is documentation for the next version of Pyroscope. For the latest stable release, go to the latest version.

Open source

Version 1.2 release notes

We are excited to present this release of Grafana Pyroscope packed with 150 commits.

In this release, we’ve introduced significant enhancements to our microservice mode, aiming to boost performance and streamline operations. The compactor component has been added to optimize block management, improving query speed and reducing replication factor overhead.

Our physical planning has undergone optimization, ensuring that data deduplication occurs only when necessary. Additionally, we’ve initiated tracing integrations, allowing for the inclusion of span ids in profiling samples and enabling flame graph filtering.

For users leveraging Function as a Service (FaaS) environments, we’ve enhanced profiling data ingestion by automatically aggregating profiles. This not only reduces the number of profiles but also contributes to improved overall efficiency.

We’ve invested substantial effort in optimizing the read path and refining query performance, delivering a smoother user experience.

Trace to profiles integrations image

Notable changes are listed below. For more details, check out the Full 1.2.0 Changelog:

Version 1.2.x changelogs:

Features and enhancements

This section lists all new features and enhancements for version 1.2.x.

Version 1.2.1

Features and enhancements for version 1.2.1:

  • Add a way to control the aggregation type for the SelectSeries API (#2758)
  • Add admin module serving the bucket web tool (#2724)
  • Add block compaction level to bucket index (#2721)
  • Introduce the first release of the Cluster API Versioning (#2780)
  • Implement Settings API (#2711)
  • Develop optimized pprof symbolication and pprof truncation (#2679, #2754)
  • Add the first iteration of the blocks viewer cli tool (#2697)

In addition, the following improvements and updates for version 1.2.1:

  • Improve SelectMatchingProfiles performance (#2734)
  • Enhance language detection performance (#2823)
  • Refactor Azure bucket configs (#2742)
  • Update various dependencies and libraries (#2741, #2744, #2826, #2827, #2832)
  • Switch to relative links in block viewer to address issue with alternate base URLs (#2763)
  • Update styling to match Grafana (#2827)

Version 1.2

Enhancements for version 1.2:

Bug fixes

Version 1.2.1

  • Fix duplicate @emotion/react import and favicon (#2798)
  • Resolve query split logic issues for LabelNames, LabelValues, and ProfileTypes (#2852)
  • Rename Phlare to Pyroscope (#2722)
  • Fix span name for BlockSelect from store-gateway (#2842)
  • Address issues in version merging in memberlist (#2815)
  • Correct handling of overriding extraArgs in components (#2751)
  • Remove go.mod replace for (#2848)
  • Remove parquet page file buffer in symbdb (#2820)
  • Fix various issues in ebpf, ReduxQuerySync, and UI units (#2703, #2761, #2778, #2788, #2789, #2812, #2838)
  • Fix ingress for Pyroscope UI (#2807)

Version 1.2

Documentation updates

Version 1.2.1

  • Add initial docs for the /pyroscope/render API endpoint (#2837)
  • Create “Ingest and analyze profile data” section in docs (#2828)
  • Add upgrade from standard pprof example (#2829)
  • Add compactor to docs (#2720)
  • Migrate from Standard pprof to Pyroscope for Continuous Profiling (#2830)
  • Add introductory material and how to use Pyroscope pages (#2834, #2836, #2839)

Version 1.2

  • We’ve added documentation for profilecli to query and upload pprof files.
  • We’ve also documented the store-gateway and compactor component.