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
- a7504f4 Add grafana-agent.java language mapping (#2866)
- 23b4bb3 Add memory overhead doc (#2895)
- ee2b23a Add self vs total docs (#2884)
- 040609d Add support to set readinessProbe.initialDelaySeconds in Helm (#2865)
- c5ce1c9 Avoid loading all symbols for each partition destination (#2825)
- 87ad94c Correct river config in go_pull.md (#2939)
- 8259ac5 Create release notes for v1.2.1 (#2860)
- cc1b33e Fix compactor metrics (#2894)
- 52b7da5 Fix deployming
make deploy-micro-services
aftermake deploy
(#2921) - 6c8a6f1 Handle profile types call properly without bucket store (#2910)
- 25cf17e Helm: update agent configmap creation condition (#2879)
- 8dc2739 Helm: update doc link in agent configmap (#2886)
- c606b80 Helm: update ingress template's pathTypes (#2887)
- cea7b25 Increase parquet read buffer size (#2924)
- 3087725 Listen on 127.0.0.1 in tests to avoid firewall popups on MacOS (#2882)
- 7faadde Refactor: Upgrade connect-go, protobuf and buf (#2909)
- ec3deff Remove tenant-settings micro-service (#2922)
- c6646db Time based downsampling during compaction (#2880)
- d98b4a3 Update alpine version to 3.18.5 (#2901)
- 678c8d1 Update deployment diagram link (#2885)
- 318f600 Update golang version to 1.21.5 (#2902)
- 2402565 Update golang version to 1.21.6 (#2932)
- 2d72a4d Update java.md (#2904)
- 1912354 Use LabelValues for ProfileTypes call in querier (#2912)
- c923c15 Use api/v0.4.0 after releasing it with connect-go (#2911)
- 3d54b5f [DOC] Updated intro and analyze sections (#2855)
- f6dda62 add 1 min youtube short video on ebpf (#2893)
- 6a1f0ba bugfix: Fixes panic in compaction benchmark (#2918)
- 9e88e1f bugfix: Properly cleanup dst folder on compaction (#2870)
- e6b1693 bugfix: Warn only when deleting twice during compaction (#2874)
- 506c6fe chore(deps): bump follow-redirects from 1.15.2 to 1.15.4 (#2898)
- 740b3a6 chore(deps): bump follow-redirects in /examples/nodejs/express-pull (#2897)
- 35d4dc6 chore(deps): bump golang.org/x/crypto from 0.15.0 to 0.17.0 (#2867)
- 2a87d84 chore: Makefile cleanup go.mod tidying (#2900)
- e9b80b1 chore: add otel-profiling-java example (#2872)
- c054c6b chore: bump dskit dependency (#2873)
- 50f11fa doc: Add sampling diagram (#2861)
- 40ccc05 docs(examples): Grafana agent java example (#2930)
- 417f420 docs(lambda): AWS Lambda extension SDK support (#2931)
- de89897 feat: Add tracing integrations to compaction (#2876)
- ba25f23 feat: Adds the compactor for the all target (#2875)
- cabb3d2 feat: Clean up uploaded blocks in ingesters (#2816)
- fbd1561 feat: Extract main binary version from labels (#2914)
- 749ad99 feat: Improve compaction shutdown (#2903)
- cb15308 feat: Improve symbols compaction (#2864)
- f36b5ce feat: Only load all symbols when splitting (#2871)
- da19f44 feat: Use object storage to save tenant settings (#2905)
- bbcb729 feat: add function selector to pprof query (#2878)
- 816d7b4 feat: profilecli compact command (#2869)
- ed65138 fix FQDN to short names (#2684)
- 00847ab fix NodeJS Docs Markdown link (#2890)
- 59904f7 fix: Skip non-tenant directories during block cleanup (#2916)
- ae00c5b fix: inject JFR labels into pprof (#2868)
- 5280a97 fix: pprof profile builder panics (#2917)
- 9ef1044 helm: update pyroscope to v1.2.1 (#2857)
- d5c9096 move jfr-pprof conversion code from pyroscope repo to jfr-parser module (#2892)
- 7007d52 refactor: Removes the delta reserved labels from storage. (#2920)
- b4d686b remove dependency on grafana agent (#2913)
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