Skip to content

Releases: grafana/pyroscope

v1.7.1

31 Jul 17:50
9870a55
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.7.1

This is a maintenance release addressing an issue with compactors in single binary mode.

Changelog

As always, feedback is more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.7.1

v1.7.0

31 Jul 13:49
02f2ded
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.7.0

Improvements and Updates

  • Ability to relabel profiles at ingest (#3369)
  • Use Grafana Alloy (instead of Grafana Agent) in the Helm chart (#3381)
  • Per-app usage metrics (#3429)
  • Add stacktrace selectors to query merge (#3412)
  • pprof export for Go PGO (#3360)
  • Custom binary format for symdb (#3138)
  • Repair truncated Go CPU profiles (#3344)
  • Add initial load tests (#3331)
  • Align default step for /render with Grafana (#3326)
  • Allow use of different protocols in profilecli (#3368)
  • Various performance improvements (#3395, #3345, #3349, #3351, #3386, #3348, #3358)
  • Improve readiness check for ingesters and frontend (#3435)

Fixes

  • Fix error handling in filterProfiles (#3338)
  • Fix frontend header handling (#3363)
  • Fix line numbers for pyspy (#3337)
  • Don't compute delta on relabeled godeltaprof memory profiles (#3398)
  • Honor stacktrace partitions at downsampling (#3408)
  • Fix infinite loop in index writer (#3356)

Documentation Improvements

  • Add a Grafana installation to all examples (#3431)
  • Fix broken links (#3440)
  • Remove --stability-level for Alloy v1.2 (#3382)
  • Add parameters from otel-profiling-java (#3444)
  • Add supported languages for eBPF (#3434)
  • Link to supported languages (#3432)
  • Update link to play.grafana.org (#3433)

Full changelog

As always, feedback is more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.7.0

v1.6.1

21 Jun 14:17
3d664fc
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.6.1

This is maintenance release updating Go to version 1.21.11 and our base image Alpine to 3.18.7.

Improvements and Updates

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.6.1

v1.6.0

30 May 15:16
65ad9d6
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.6.0

Improvements and Updates

  • eBPF: Allow resizing maps (#3181)
  • Performance: optimize tree node insertion (#3105)
  • Performance: tune row iterator buffer size (#3266)
  • Compactor: Add a compactor rewriter LRU cache (#3165)
  • Helm: Add HPA Support for all Pyroscope components (#3157)
  • API: Call for exposing query analysis (#3276)
  • API: Use custom codec for vtproto within connect-go (#3310)
  • Config: Add S3 force-path-style parameter (#3158)
  • Config: Add flag to disable printing banner (#3123)

Fixes

  • Fix bug in query frontend diff handling (#3315)
  • Fix panic when dealing with missing mapping ID (#3188)
  • Fix empty string handling in pprof (#3204, #3244)
  • Fix panic recovery interceptor (#3246)
  • Fix pprof merge profiles ignoring sample type stub (#3198)
  • eBPF: Fix issue when a cls arg is a cell (#3280)
  • eBPF: handle case when self is put in cell (#3284)

Documentation Improvements

  • Add changes from Cloud Profiles UI to OSS docs (#3243)
  • Add links to supported profile types in SDKs (#3228)
  • Add note for Agent to Alloy to docs (#3201, #3272)
  • Add Pyroscope landing page for doc (#3176)
  • Update screenshots in Pyroscope UI' (#3234)

Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.6.0

v1.5.0

19 Mar 19:41
891146f
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.5.0

Improvements and Updates

  • Repair Go stack traces (#3014)
  • eBPF: Aggregate python stacks in kernel space instead of user space (#2996)
  • eBPF: Propagate PID namespace to kernel space (#3008)
  • eBPF: Run tests on many kernels (#3025)
  • eBPF: Add support for more Python versions (#3035)
  • Improve trace span propagation in streaming requests (#2992)
  • Drop type params from Go function names (#3010)
  • Disable vt proto pools (#3034)
  • Allow running multiple rideshare examples in the same network namespace (#2990)

Fixes

  • Wait for ongoing queries to finish at close (#3030)
  • Fix data duplication in the read path (#3100, #3103)
  • Fix merging of empty pprof samples (#3031)
  • Correctly format makefile help rule (#3021)

Documentation Improvements

  • Reorganize examples folder to match documentation structure (#3026)
  • Update Configure the client and span profiles doc (#3028)
  • Improve intro and span profiles docs (#3089, #3099)
  • Update make docs procedure (#2994, #3011, #3059)

Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.5.0

v1.4.0

07 Feb 23:51
f8e6d8b
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.4.0

New Features

  • Adhoc profiles API (#2963)
  • Add query-tracer to profilecli (#2966)
  • Add ServiceMonitor support to helm chart (#2944, #2929, #2967)
  • Scope time series to flamegraph node API (#2961)

Improvements and Updates

  • Improve release workflows and documentation (#2954, #2989, #2948, #2952, #2960, #2975)
  • Improve block grouping in admin block viewer (#2947)
  • Remove tenant settings from microservices deploy (#2962)
  • Add test ids (#2957)
  • Bump chart app version (#2940)
  • Bump godeltaprof and jfr-parser dependencies (#2955)
  • Update default image tag in chart (#2941)
  • Per target configuration with labels (#2977)
  • Async profile row iterator (#2953)
  • Disable Go names decoration (#2976)

Fixes

  • Add missing module dependencies (#2969)
  • Fix missing icon assets (#2985)
  • Store-gateway: Handle index read error properly (#2959)
  • Use correct field in mappingsKey (#2964)
  • Bump golang.org/x/net (#2986)
  • Fix elf base for unaligned PT_LOAD offset, make build id error not fatal (#2983)

Documentation Improvements

  • Add 1.3 release notes for docs (#2949)
  • Add span profiles documentation (#2982)
  • Update eBPF and Java documentation (#2972, #2973)

Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.4.0

v1.3.0

18 Jan 04:58
87ad94c
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.3.0

New Features

  • Enhanced symbol compaction process: Improved performance and storage efficiency with the new symbol compaction process (#2864).
  • Introduced function selector in pprof query: More precise profiling with the addition of a function selector (#2878).
  • Support for time-based downsampling during compaction: Optimized data processing with time-based strategies (#2880).
  • Added tracing integrations to compaction: Better observability in the compaction process (#2876).
  • Added language mapping for Grafana agent in Java: Expanded profiling capabilities (#2866).

Improvements and Updates

  • Updated Alpine and Golang versions: Enhanced security and performance with the latest versions of Alpine (3.18.5) and Golang (1.21.5) (#2901, #2902).
  • Injected JFR labels into pprof: Enriched profiling data for better insights (#2868).
  • Streamlined Makefile and go.mod: Better build process with updated Makefile and tidied go.mod (#2900).
  • Updated agent configuration in Helm: More flexible deployments in Kubernetes environments (#2879).
  • Refactored ebpf installation documentation: Improved clarity and usability in ebpf documentation (#2849).
  • Upgraded connect-go, protobuf, and buf: Improved system interoperability (#2909).
  • Enhanced compaction shutdown process: Improved system stability during shutdowns (#2903).
  • Implemented profilecli compact command: Efficient data management with the new command (#2869).

Fixes

  • Fixed panic in compaction benchmark: Addressed issues causing system instability (#2918).
  • Resolved block cleanup process issues: Ensured system integrity and stability (#2916).
  • Fixed pprof profile builder panics: Enhanced system stability (#2917).
  • Corrected profile types call handling: Better data management without bucket store (#2910).
  • Removed delta reserved labels from storage: Optimized the storage system (#2920).
  • Increased parquet read buffer size: Improved data processing efficiency (#2924).

Documentation Improvements

  • Enhanced memory overhead documentation: Deeper insights into system performance (#2895).
  • Updated NodeJS documentation: Fixed Markdown link issues for better clarity (#2890).
  • Expanded java.md documentation: Comprehensive Java profiling guidance (#2904).
  • Removed dependency on Grafana agent: Streamlined Pyroscope architecture (#2913).
  • Updated various sections: Intro, analyze, sampling, and SDK pages now offer clearer and more detailed information (#2855, #2844, #2854, #2851, #2861).
  • Launched a 1-minute YouTube short on ebpf: Providing a quick and informative overview of ebpf (#2893).

Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.3.0

v1.2.1

15 Dec 15:38
178e882
Compare
Choose a tag to compare

Release Notes for Pyroscope 1.2.1

New Features

  • 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)

Improvements and Updates

  • 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)

Fixes

  • 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 golang.org/x/exp (#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)

Documentation Improvements

  • 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 placeholder pages for Pyroscope documentation (#2834, #2836, #2839)

As always, feedback is more than welcome. Feel free to open issues or discussions. You can reach out to the team using the provided channels.


Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.2.1

v1.2.0

17 Nov 09:36
67c47fd
Compare
Choose a tag to compare

🚀 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 flamegraph 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 Changelog: v1.1.5...v1.2.0

Enhancements

Bug Fixes

Documentation Updates

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

New Contributors

Your feedback is crucial to us, and we encourage you to explore the improvements in this release, report any issues, and join the discussions to help us continue refining and enhancing Grafana Pyroscope.

Thank you for your ongoing support!

You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.2.0

The Pyroscope team

(@kolesnikovae @korniltsev @cyriltovena @simonswine @aleks-p @bryanhuhta @petethepig @Rperry2174)

v1.1.5

12 Oct 16:37
Compare
Choose a tag to compare

Changelog

As always, feedbacks are more than welcome, feel free to open issues/discussions.
You can reach out to the team using:

Docker Images

  docker pull docker.io/grafana/pyroscope:1.1.5