Releases: grafana/pyroscope
v1.3.0
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
v1.2.1
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
- b9966bd Add a way to control the aggregation type for the SelectSeries API (#2758)
- 9e55dd1 Add admin module serving the bucket web tool (#2724)
- 21e0892 Add block compaction level to bucket index (#2721)
- cc87e23 Add compactor to docs (#2720)
- affe34d Add initial docs for the /pyroscope/render API endpoint (#2837)
- d87e810 Add the first iteration of the blocks viewer cli tool (#2697)
- 30f69c4 Add upgrade from standard pprof example (#2829)
- 3f6c051 Create "Ingest and analyze profile data" section in docs (#2828)
- dfbe9a8 Fallback to deduplication when hitting problem block planning (#2732)
- 0cf0bca Fix duplicate @emotion/react import and favicon (#2798)
- 178e882 Fix query split logic for LabelNames, LabelValues and ProfileTypes (#2852)
- 6e57253 Fix: Rename Phlare to Pyroscope (#2722)
- f095b8d Fixes span name for BlockSelect from store-gateway (#2842)
- f262b24 Fixes versions memberlist merging. (#2815)
- 59fff4c Handle overriding extraArgs in components correctly (#2751)
- 17b66ce Improve SelectMatchingProfiles performance (#2734)
- a338417 Improve language detection performance (#2823)
- 09d605e Merges stacktraces without sorting and pulling labels. (#2673)
- e1a13ca Migrate from Standard pprof to Pyroscope for Continuous Profiling (#2830)
- 2bfe620 Refactor Azure bucket configs (#2742)
- f2e64d7 Remove go.mod replace for golang.org/x/exp (#2848)
- d8e5089 Removes parquet page file buffer in symbdb (#2820)
- d0e9c5d Support discovering docker swarm tasks for ebpf. (#2843)
- f7b8e52 Switch to relative links in block viewer to address issue with alternate base URLs (#2763)
- f803526 Update github.com/thanos-io/objstore to latest (#2741)
- 974bb92 Update go_pull.md (#2744)
- fa0cc37 Update metric in profile-metrics.json (#2826)
- a2c6553 Update styling to match grafana (#2827)
- 5bb9116 Update supportd .NET platforms / versions (#2832)
- fbec955 Use the request context for the admin handlers (#2824)
- 5b8ab0e Xiyu/css fix dependency update (#2765)
- 31ec2d0 [DOC] Add intro material for Pyroscope (#2839)
- 053ca72 [DOC] Add placeholder pages for intro (#2834)
- 80959ae [DOC] Add release notes (#2836)
- c25850f [profilecli/canary-exporter] Fix probe_success metric description (#2810)
- 6c1e141 chore(chart): bump version (#2713)
- d56e6d7 chore(deps): bump @adobe/css-tools from 4.3.1 to 4.3.2 (#2790)
- 4ddcd54 chore: adds ability to render profile in dot format (#2808)
- 1071f56 chore: bump godeltaprof dependency (#2784)
- 8838f5a chore: disable collapsing for now (#2750)
- b9bb769 chore: polish span profiler (#2811)
- a4c1438 chore: remove old tracing integration examples (#2801)
- 370e49f chore: update tracing demo (#2791)
- deaa1ec chore: updates grafana/flamegraph dependency - fixes slow comparison view renders (#2749)
- fd89bda feat: Cluster API Versioning (#2780)
- fce54f9 feat: Logs push failure information (#2835)
- e3eec1a feat: Settings API (#2711)
- 104465c feat: optimized pprof symbolication (#2679)
- 000930f feat: pprof truncation (#2754)
- d8f8194 fix ingress for pyroscope UI (#2807)
- 82a7d75 fix(ReduxQuerySync): Register the sync as soon as possible (#2723)
- e567d52 fix(Units): Fix incorrect units in the UI (#2733)
- 71ffca5 fix(ebpf): #2788 followup (#2789)
- 8dc366a fix(ebpf): ignore kthreads, do full pids cleanup (#2778)
- 131c5e3 fix(ebpf): merge equal samples (#2788)
- 94d0a6a fix(ebpf): prefer pid targets over container targets (#2761)
- e7f202e fix(ebpf): python arm64 (#2703)
- 9826831 fix(ebpf): start profiling after attaching perf reader (#2812)
- fba9246 fix: Use a pool of LabelPairs to reduce memory allocs (#2838)
- d4b89c1 fix: span query read path (#2822)
- 7f90946 fix: test ebpf ci (#2752)
- 52740c8 helm: release a new version for 1.2 (#2731)
- e8ebeb7 helm: update to Pyroscope 1.2 (#2717)
- a27512a perf: optimize SelectMergeProfile (#2762)
- 6b00f62 perf: optimize select merge span profile read path (#2813)
- 5dcea23 refactor(TagExplorer): Human friendly metric names in the Tag Explorer page (#2787)
- 2a6e094 remove old api key format from example docs (#2619)
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
🚀 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
Notable changes are listed below for more details check out the Full Changelog: v1.1.5...v1.2.0
Enhancements
- 728493e feat: Scalable Compactor (#2466)
- d4e3b03 Create a physical plan for block querying (#2586)
- 1488496 Extend profile schema to support spans (#2508)
- 1e7ebd9 Allow to configure pyroscope high disk utilization (#2666)
- 4e8439d Optimize repeated row iterator (#2572)
- f1b82c5 feat(ebpf): add pyperf (#2201)
- 25084ea Randomize sessions after aggregation (#2656)
- 3c5a959 Make max node limit configurable (#2658)
Bug Fixes
- e572d26 Cleanup failed segment before flushing. (#2606)
- be7bc5d Fix symbols resolver race condition (#2665)
- f4b0a60 fix(jfr): merge equal samples (#2652)
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
- @jeyraof made their first contribution in #2327
- @nlamirault made their first contribution in #2342
- @urgerestraint made their first contribution in #2357
- @bodji made their first contribution in #2363
- @rabunkosar-dd made their first contribution in #2364
- @wilfriedroset made their first contribution in #2424
- @jhedev made their first contribution in #2432
- @mlcdf made their first contribution in #2459
- @grafakus made their first contribution in #2496
- @github-actions made their first contribution in #2493
- @vivekkoya made their first contribution in #2499
- @yuseferi made their first contribution in #2537
- @jjangga0214 made their first contribution in #2502
- @segler-alex made their first contribution in #2557
- @bubu11e made their first contribution in #2560
- @zalintyre made their first contribution in #2536
- @dxsup made their first contribution in #2581
- @nickelghost made their first contribution in #2601
- @aleks-p made their first contribution in #2645
- @knylander-grafana made their first contribution in #2676
- @JakeCooper made their first contribution in #2699
- @AS-Labs made their first contribution in #2705
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
Changelog
- 408c433 fixes homebrew formulas
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
v1.1.0
Pyroscope version 1.1 release notes
The Pyroscope team is excited to announce the the second release. This release allows to retrieve series from persistent storages like local disk and object store and also has a couple of performance improvements (e.g. JFR ingestion is handled a lot more efficently).
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.1.0
Pyroscope Release Changelog Summary
Improvements & Enhancements:
- Switched to v1 Golang SDK.
- Updated multiple dependencies including Go, Ruby, Django, Rust, and more.
- Introduced meta fetcher that synchronizes filtered metadata locally.
- Introduced pyroscope packaging via nfpm.
- Use Grafana flamegraph component.
- 'ExportData' now respects the 'flamegraph.com' related prop.
- Introduced option to disable RBAC.
- Introduced a tenant scanner.
- Refactoring for block compaction to enable shard-splitting.
- Improved multitenancy default behavior documentation.
Fixes:
- Addressed various race conditions and bug fixes.
- Improved URL handling and pprof merges.
- Fixed various documentation inconsistencies and outdated references.
- Fixed broken links.
- Resolved multiple issues related to dotnet and ebpf.
- Addressed flaky tests and issues in ingestionAdapter.
- Handle profiles without timestamps.
Documentation Updates:
- Added tabs to Java docs and updated ebpf docs.
- Added section for Apple arm64 builds.
- Updated documentation for contributors.
- Improved helm documentation.
- Optimized and clarified querier API calls.
DevOps & Tooling:
- Introduced helm v1.0.0 release.
- Automation added for brew releases.
- Helm improvements: setting correct namespace, adding initContainers, hostNetwork, etc.
- Refactored after dskit upgrade.
- Updated rideshare examples for ingesting to grafana.com.
New Contributors:
- Warm welcome to the following first-time contributors:
Detailed Changelog
- chore: helm v1.0.0 release by @petethepig in #2324
- Fix race on symdb stats update by @kolesnikovae in #2323
- helm: Removes kubeVersion check by @cyriltovena in #2330
- Fix broken links by @jeyraof in #2327
- chore: s/next/main/g by @petethepig in #2332
- docs: s/next/latest/g by @petethepig in #2331
- Update pyroscope readme by @Rperry2174 in #2333
- docs: Removes the old scrape_configs block documentation by @cyriltovena in #2334
- chore: update helm versions by @darrenjaneczek in #2338
- fix: make URLs modifiable in code by @darrenjaneczek in #2337
- cleanup: Removes old docker-compose example by @cyriltovena in #2336
- Mixin: Change from Phlare to Pyroscope by @nlamirault in #2342
- Switch to v1 Golang SDK by @cyriltovena in #2329
- Remove type parameters from go names by @kolesnikovae in #2343
- fix: update jfr parser by @korniltsev in #2340
- Update to godeltaprof to an latest version by @cyriltovena in #2347
- build: adds automation for brew releases by @petethepig in #2348
- fix(docs): dotnet wall is disabled by default by @korniltsev in #2353
- fix(docs): warn java users setting alloc/lock to 0 is not a good idea by @korniltsev in #2352
- Fix typo in Pyroscope 1.0 upgrade guide markdown by @urgerestraint in #2357
- Record query parameters before parallelization by @kolesnikovae in #2358
- Remove live alloc profiling from java docs by @Rperry2174 in #2362
- Improve mulitenancy default behaviour documentation by @cyriltovena in #2361
- Add option to disable RBAC by @kolesnikovae in #2365
- fix: parse jfr to pprof, without intermediate tree by @korniltsev in #2355
- fix: make helm/check check/unstaged-changes by @korniltsev in #2374
- feat: add params for initContainers, and hostNetwork by @bodji in #2363
- wip: fix: dont do pprof-bytes-pprof roundtrip for jfr by @korniltsev in #2373
- storage: Refactor block compaction to allow shard-splitting by @cyriltovena in #2366
- fix(docs): dotnet s/PYROSCOPE_PROFILING_CONTENTION_ENABLED/PYROSCOPE_PROFILING_LOCK_ENABLED by @korniltsev in #2378
- Fix pprof merge by @kolesnikovae in #2379
- add ability to annotate services separately by @rabunkosar-dd in #2364
- fix: pprof ParseToPprof by @korniltsev in #2376
- Fixes a race when flushing indexes of rowgroups by @cyriltovena in #2382
- Enable PDB for deployments by @kolesnikovae in #2380
- Introduce a meta fetcher that synchronize filtered metadata locally by @cyriltovena in #2381
- Adds a tenant scanner by @cyriltovena in #2384
- chore(examples): add exampels updater, update examples by @korniltsev in #2386
- Bump chart version by @kolesnikovae in #2389
- Use the optimized querier for symdb by @simonswine in #2390
- docs: Remove warning in helm doc. by @cyriltovena in #2395
- Refactoring: Create a common ring configuration by @cyriltovena in #2391
- Adds bucketindex package by @cyriltovena in #2388
- fix: Rings are using the incorrect port by @bryanhuhta in #2398
- fix: log tenant id by @korniltsev in #2394
- Adds a way to validate local blocks by @cyriltovena in #2397
- refactor: work on making container components easier to override; adjusting spacing by @darrenjaneczek in #2385
- fix: fix 2 races by @korniltsev in #2402
- fix: dotnet ingested pprofs by @korniltsev in #2403
- Add fgprof rule to helm chart by @simonswine in #2404
- fix: retain profile name and app when clicking certain buttons or refreshing page by @darrenjaneczek in #2407
- Fixes flaky tests on file block size by @cyriltovena in #2409
- Update go to 1.21.1 by @simonswine in #2414
- Update ruby image and gems by @simonswine in #2415
- Update django by @simonswine in #2417
- fix: various bugs that occur when selection is too small by @darrenjaneczek in #2410
- prepare rideshare examples for ingesting to grafana.com by @korniltsev in #2416
- Explain querier API calls with a brief comment by @simonswine in #2418
- Reduce roundtrips to object store, when opening parquet files by @simonswine in #2392
- Docs: Use the correct data source type by @simonswine in #2423
- Fixes IterBlockMeta to skip dir without meta by @cyriltovena in #2401
- Handle pyroscope 0.37 modes more gracefully by @simonswine in #2425
- api: Improve http errors by @cyriltovena in #2408
- Update go.mod for tracing examples by @simonswine in #2427
- Update rust dependencies in examples by @simonswine in #2428
- Use centralized
make docs
procedure by @jdbaldry in #2413 - block: Adds Download and MarkForNoCompact by @cyriltovena in #2396
- Fix ingestionAdapter bugs surfaced in f32 by @korniltsev in #2434
- Remove links for Ruby and Python by @...
v1.0.0
Pyroscope version 1.0 release notes
The Pyroscope team is excited to announce the first release. We’re committed to building the best continuous profiling experience in Grafana and contributing to that space along with the open-source community.
From the first release you can expect:
- Pyroscope is a horizontally-scalable, highly-available, multi-tenant continuous profiling aggregation system with similar architecture to Grafana Mimir, Grafana Loki, and Grafana Tempo.
- Easy to get started with guides covering Helm, Tanka, and docker-compose installations.
- A fully integrated data source in Grafana to correlate your continuous profiling data with other observability signals using Grafana Explore and dashboards. The native flame graph panel visualization can also be used by other profiling data sources.
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.0.0
v1.0.0-rc.0
Changelog
- d8f89a6
- aad7931
- 4e70e8d
- 00d0dac chore(frontend): remove unused import and fix typo (grafana/phlare#668)
- 59ba775 "Fix" concurrency problem
- 1a0a563 Actually do use the sorting order that I had intended
- 3a9ebde Adapt resource usage in helm
- b707fab Add -modules support (grafana/phlare#497)
- d57ab6f Add Eve to MAINTAINERS.md
- a608dbd Add JVM/java integration documentation
- 5e04c41 Add MaxLookBack and MaxLength Query Limits (grafana/phlare#741)
- bbebfa4 Add Monaco editor and some basic language config grafana/phlare#140
- 30c262a Add Python language examples
- ce24e46 Add TotalValue per profile (grafana/phlare#805)
- 79a6c31 Add Tracing Instrumentation for Querier
- db7e7b6 Add
memberlist
API support (grafana/phlare#578) - f401a7c Add a Profile Selector Query Editor
- 3a4300b Add a benchmark
- c5ec56c Add a debug image with phlare running through dlv
- 644e831 Add a github action to release automatically when tagging the repo. (grafana/phlare#482)
- 79b01c1 Add a go.mod check for the datasource plugin
- 2494349 Add a helm check using kubeval
- 1542562 Add a modified version of tsdb with a new head for fire
- 3e28c41 Add a select profile API on ingester
- cd79082 Add a span for the head select profile
- 3404585 Add a tool to spin up a fire ready Grafana
- 63c213d Add additional concurrency vectors to the test
- b7af0ce Add agent service with targets API
- 49b462a Add an API go module for external usage.
- 335aab9 Add an action to run the linter as a CI step.
- 9d71119 Add apache license for the API folder
- 8877665 Add app selector search (grafana/phlare#829)
- faf0d09 Add better spacing for the options description
- 03d3bd1 Add block format and disk storage page
- bd3c7b2 Add block opened metrics (grafana/phlare#785)
- 2931c58 Add block querier to query parquet files
- b11327c Add block stats to store-gateway status page (grafana/phlare#753)
- 72477f8 Add boiler plate code for flamegraph and readme about dev setup grafana/phlare#125
- ef620af Add bra config
- eb3426d Add bra config for fire datasource grafana/phlare#139
- afbd07b Add changelog
- 0abb36e Add comments
- 5e91b29 Add concurrency limit for GitHub Actions and all use
.yml
file extension (grafana/phlare#571) - 43053ee Add created to point to fire and its version
- 02e8413 Add css width because reasons
- 14add92 Add custom Grafana Dockerfile
- 53e7117 Add distributor limits (grafana/phlare#510)
- d00fe2b Add distributor skeleton and protobuf generation
- 3e8f277 Add docker image build step
- a2a7eb8 Add docs for Django support
- 7b11ac5 Add docs test from mimir
- 870fe91 Add documentation release note for v0.1
- 7644054 Add firetool CLI
- db2992f Add flamegraph export feature (PNG/JSON/PPROF) (grafana/phlare#866)
- a03bad2 Add go build and the first skeleton
- f57ecff Add governance and other project infra
- 4ccabe0 Add grafana agent docs (grafana/phlare#720)
- 2993f8d Add grafana agent index page (#2220)
- 8b7a5a5 Add gzip accept encoding
- ec5b65e Add hash to css files (grafana/phlare#647)
- 6baff20 Add head block implementation
- a4fc340 Add headless svc for all workload (grafana/phlare#556)
- bfdfd3c Add helm chart and
make deploy
- 2fb7a76 Add helm ci/release workflows
- b5f0d33 Add help text test (grafana/phlare#539)
- bc38b3c Add hook to verify goreleaser is using appropriate go verison
- 91481e0 Add http client instrumentation
- 702107f Add index head tests
- 71e541a Add index page (grafana/phlare#547)
- 54462be Add index pages for status service (grafana/phlare#563)
- 6266a5d Add ingested sample values total metric.
- ed7b927 Add ingester_querier method for metadata
- fddcf64 Add instructions on how to join the Grafana Slack workspace (grafana/phlare#583)
- 1bb6ffe Add iters from tempo
- cd63f3c Add java-spring to scrape target in demo
- e28c321 Add jsonnet deployment documentation
- 0ca875a Add jsonnet wrapper library
- 50e7c3b Add links to frontend README (grafana/phlare#762)
- 03ed0f1 Add log request middleware for Querier (grafana/phlare#700)
- d381825 Add logos
- 0235309 Add merge samples by profile labels to ingesters
- b56d187 Add metadata API to ingester
- 8051c2e Add metadata API to ingester
- 37657f9 Add metrics for block querying
- ca8487c Add metrics for flushed blocks (grafana/phlare#605)
- e88f56c Add metrics for replication factor of the ingester ring (grafana/phlare#623)
- 010ab8c Add metrics from profiles in distributors
- 8a899e2 Add min step config
- c9c34e6 Add minio repo
- 508c2c7 Add minio to helm
- 861ba9d Add missing file and move a few things around
- 7d7cf84 Add missing flags to expand config file (grafana/phlare#492)
- 5f135d8 Add missing sample pending
- f64b995 Add monaco editor and some basic language config
- 93ef69b Add more context to scrape failures
- 618b0f5 Add more instrumentation
- 77182d8 Add more test for computing histogram
- 9d43e5a Add new metrics for samples bytes ingestion without symbols (grafana/phlare#584)
- d39f022 Add note about removing bytes profile labels.
- 6e91f50 Add observability for Logs, Trace
- 9951cf2 Add options with query types in query editor
- e8d9122 Add persistence config to helm chart
- 999860b Add phlare head statistics
- d72de46 Add pprof test helper
- 0d2d248 Add profile segment and reason for flush metrics (grafana/phlare#608)
- 360f8b4 Add profile size metrics in distributor
- cb25a2c Add profile specific store
- 71d7b8b Add profile type to head metrics.
- 9c86186 Add pyroscope prefix
- 7b1bbe2 Add query subcommand to profilecli for downloading pprof from phlare (grafana/phlare#475)
- e7dab06 Add query-frontend, query-scheduler and querier worker. (grafana/phlare#496)
- 19420c9 Add readme
- ba9e0b2 Add rust integration instructions
- d9ff0b0 Add sample deduplication in memory
- be857ab Add section on scrape config
- febd620 Add shift-enter to run
- ef8a8ca Add simple autocomplete to monaco
- 12213ce Add some basic CI
- 082db74 Add some code examples using @simonswine repo.
- 82d2738 Add some comments
- 68da7be Add some experiments with schemas
- baab40e Add some simple head metrics.
- 93fbfaf Add some span parameters
- ad6965f Add some tests for MergePprof/ByStacktraces/ByLabels
- c661e29 Add stacktrace ids abstaction
- 8793f4f Add stacktraces memory size metric (grafana/phlare#838)
- 23cffc4 Add start/grafana make target to start Grafana with plugins
- acbd4f5 Add store-gateway components (grafana/phlare#701)
- 5b32919 Add subcommand to upload profiles to Phlare using PusherService.Push (grafana/phlare#607)
- d32dbce Add support for global size-based retention policy (grafana/phlare#628)
- ff10da9 Add support for multiple services in helm
- 8c929e7 Add targets API to agent.
- 7b9245b Add terminationGracePeriodSeconds helm value (grafana/phlare#837)
- c922748 Add test cases
- 43680eb Add test cases for getSeriesRef (grafana/phlare#659)
- 90327f8 Add test for selectMerge
- 0dc2db7 Add tests
- 67d1ef4 Add tests for seriesIndex renumbering
- 0979003 Add the home page link for Phlare logo (grafana/phlare#585)
- e4f96f0 Add tool to see size of column in parquet file
- 4b789c9 Add tooltip and summary text
- e26a2d4 Add ts-ignore for grafana/data APIs
- da155ec Add unit tests for MergeProfilesStacktraces
- d3110d5 Add video to documentation intro page.
- a6e789a Add workflow_dispatch to technical-documentation release workflow to allow manual triggering of publication
- f743372 Add: Load environment variables from secrets
- 6d17af3 Adding goreleaser to create artifacts (grafana/phlare#323)
- b233577 Adding more tests
- 960d100 Address another data race
- 6048afb Address feedback from PR
- 5f0bcc5 Adds Export to flamegraph.com (#2018)
- 4ff5fc6 Adds Pages informations to parquet-tool
- 71a812a Adds service_name labels to improve data locality (grafana/phlare#782)
- 6d1fae4 Adds a clone function for meta file (#2185)
- 95fa50c Adds a kubernetes example for java
- 3d67544 Adds a label names API
- 0e4dc02 Adds all go metrics to Prometheus instrumentation (grafana/phlare#598)
- 9a429d9 Adds anonymous statistics reporting (grafana/phlare#356)
- 3ff1a22 Adds auto deploy to fire-dev-001
- 9a2fd97 Adds canary exporter to
profilecli
(grafana/phlare#777) - 110e02e Adds contributing guide
- 3561e5f Adds docker-compose and getting started doc (grafana/phlare#324)
- 8b3093e Adds extraVolumes and extraVolumeMounts to helm
- 801ce31 Adds fgprof to Phlare
- a3576f2 Adds iteration error support in the loser.Tree (grafana/phlare#836)
- 0fc6721 Adds more word in the glossary
...
v0.37.2
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
pyroscope-0.37.2-source.tar.gz
Linux binary builds
pyroscope-0.37.2-linux-amd64.tar.gz
pyroscope-0.37.2-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.37.2_amd64.deb
pyroscope_0.37.2_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.37.2-1-x86_64.rpm
pyroscope-0.37.2-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.37.2_amd64.msi
Changes:
Bug Fixes
- jfr: do no try to decompress labels if there are no labels (#1852) (65e1d69)
- pprof parsing: initialize function to zero values (#1837) (692f11b)
Features
Performance Improvements
v0.37.1
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
pyroscope-0.37.1-source.tar.gz
Linux binary builds
pyroscope-0.37.1-linux-amd64.tar.gz
pyroscope-0.37.1-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.37.1_amd64.deb
pyroscope_0.37.1_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.37.1-1-x86_64.rpm
pyroscope-0.37.1-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.37.1_amd64.msi
Changes:
Bug Fixes
- pprof parsing: decrease number of allocations during stack hash (#1822) (f474c2d)
- self profiling sample type config (#1827) (f78fdc0)
Features
v0.37.0
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
pyroscope-0.37.0-source.tar.gz
Linux binary builds
pyroscope-0.37.0-linux-amd64.tar.gz
pyroscope-0.37.0-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.37.0_amd64.deb
pyroscope_0.37.0_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.37.0-1-x86_64.rpm
pyroscope-0.37.0-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.37.0_amd64.msi
Changes:
Bug Fixes
Features
- graphviz visualization support (#1759) (ca855d2)
- pprof streaming parsing (#1799) (7ea85f7)
- pprof: parsing arenas (#1804) (4bc7fca)
- webapp: add annotations rendering to all timelines (#1807) (6144df4)
- webapp: sync crosshair in different timelines (#1813) (e8f14bd)