Releases: grafana/pyroscope
v0.6.0
Happy new year everyone!
The first version of the year (0.6.0
) comes with the following improvements:
- improved ingestion performance in pull mode by about 30%
- new and improved tags dropdown (now with search)
- fixed tags selection issue when using
base-url
functionality (thanks @dannykopping for reporting this) - file discovery mechanism for pull mode (thanks @linthan)
- added visual notifications on the frontend for failing backend requests
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.6.0-linux-amd64.tar.gz
pyroscope-0.6.0-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.6.0_amd64.deb
pyroscope_0.6.0_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.6.0-1-x86_64.rpm
pyroscope-0.6.0-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.6.0_amd64.msi
Changes:
Bug Fixes
- frontend: add tab panel styles to adhoc comparison component. (#650) (6537dfe)
- frontend: comparison diff ui fixes (#627) (202835b)
- frontend: fix flamegraph width in comparison view (#639) (1e6bef5)
- frontend: fixes golang package name coloring (#635) (6c390b5)
- frontend: keep query param when changing routes (#674) (389019b)
- panel: import @szhsin/react-menu styles in contextmenu (#669) (2fb0fff)
- register all pprof http handlers (#672) (f377cf3)
- try to create data directory if it doesn't exist. (#646) (eac8c4e)
- use the correct controller variable. (#615) (ccd97f9)
Features
- frontend: new tags dropdown (#642) (6290e45)
- improve datetime format in adhoc output filename. (f08f498)
- pull-mode: adds file discovery mechanism (#662) (35ce0b5)
- support importing adhoc profiles in pprof or collapsed formats (#649) (14ee845)
Performance Improvements
v0.5.1
This release comes with a couple of big changes (plus bug fixes):
- Bug fix: This version also fixes a bug from 0.5.1 where timeline was non-responsive in some cases
Base URL
This allows you to provision pyroscope under some subdirectory behind a reverse proxy (e.g https://internal-portal.example.com/pyroscope
). Technically this is more of a bug fix, as we already had support for this. But the old implementation didn't work in some cases, and thanks to help from community members @jonathanza, @dannykopping and @geoah we were able to debug and refactor it to make this feature work much more reliably. BaseURL can now be specified as a full URL (https://internal-portal.example.com/pyroscope
) or as just a path to pyroscope instance (/pyroscope
).
You can pass it as an environment variable (PYROSCOPE_BASE_URL=/pyroscope
) or a flag (-base-url /pyroscope
) or as an entry the config file (base-url: "/pyroscope"
).
New Sidebar
Although a purely cosmetic change, this gets us closer to the big release of adhoc mode. Currently adhoc mode is hidden under a feature-flag, but you can test it out if you run pyroscope server with PYROSCOPE_ENABLE_EXPERIMENTAL_ADHOC_UI=true
environment variable. Do you like the new sidebar? Let us know in our slack.
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.5.1-linux-amd64.tar.gz
pyroscope-0.5.1-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.5.1_amd64.deb
pyroscope_0.5.1_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.5.1-1-x86_64.rpm
pyroscope-0.5.1-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.5.1_amd64.msi
Changes:
Bug Fixes
Features
v0.5.0
This release comes with a couple of big changes (plus bug fixes):
Base URL
This allows you to provision pyroscope under some subdirectory behind a reverse proxy (e.g https://internal-portal.example.com/pyroscope
). Technically this is more of a bug fix, as we already had support for this. But the old implementation didn't work in some cases, and thanks to help from community members @jonathanza, @dannykopping and @geoah we were able to debug and refactor it to make this feature work much more reliably. BaseURL can now be specified as a full URL (https://internal-portal.example.com/pyroscope
) or as just a path to pyroscope instance (/pyroscope
).
You can pass it as an environment variable (PYROSCOPE_BASE_URL=/pyroscope
) or a flag (-base-url /pyroscope
) or as an entry the config file (base-url: "/pyroscope"
).
New Sidebar
Although a purely cosmetic change, this gets us closer to the big release of adhoc mode. Currently adhoc mode is hidden under a feature-flag, but you can test it out if you run pyroscope server with PYROSCOPE_ENABLE_EXPERIMENTAL_ADHOC_UI=true
environment variable. Do you like the new sidebar? Let us know in our slack.
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.5.0-linux-amd64.tar.gz
pyroscope-0.5.0-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.5.0_amd64.deb
pyroscope_0.5.0_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.5.0-1-x86_64.rpm
pyroscope-0.5.0-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.5.0_amd64.msi
Changes:
Bug Fixes
- assets handling when using base-url argument (#611) (97a6002)
- avoid converting args to double dash and disable flag parsing for adhoc. (#609) (f41906d)
- integrations: start upstream in clib. (#602) (0be03c3)
Features
v0.4.1
Standard view
Diff View
This release comes with 3 big features (plus bug fixes):
Pull mode
Previously all of our integrations only supported pushing metrics from profiling targets to pyroscope server. This new pull mode allows you to specify a list of profiling targets that pyroscope server will scrape the data from. This can be useful in a few cases, particularly ones where you already pull regular metrics via prometheus. Our pull mode implementation makes extensive use of Prometheus scrape and service discovery mechanisms and this allows you to reuse your existing configs with pyroscope. We express our deep gratitude to Prometheus team for their incredible work!
New Golang integration
The new golang integrations now lives in a separate repository (https://github.com/pyroscope-io/client) and it is better than the old one because it has less dependencies and less performance overhead as it offloads more data processing to the server.
We strongly recommend that you upgrade your golang integrations to use this new version, especially if you previously had issues adding pyroscope to your applications due to a large number of external dependencies.
For more information on this new integration visit our golang docs.
Ability to Delete Apps
We’ve removed the feature flag and now you should be able to delete apps using the new delete apps command
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.4.1-linux-amd64.tar.gz
pyroscope-0.4.1-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.4.1_amd64.deb
pyroscope_0.4.1_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.4.1-1-x86_64.rpm
pyroscope-0.4.1-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.4.1_amd64.msi
Changes:
Bug Fixes
v0.4.0
This release comes with 3 big features:
Pull mode
Previously all of our integrations only supported pushing metrics from profiling targets to pyroscope server. This new pull mode allows you to specify a list of profiling targets that pyroscope server will scrape the data from. This can be useful in a few cases, particularly ones where you already pull regular metrics via prometheus. Our pull mode implementation makes extensive use of Prometheus scrape and service discovery mechanisms and this allows you to reuse your existing configs with pyroscope. We express our deep gratitude to Prometheus team for their incredible work!
New Golang integration
The new golang integrations now lives in a separate repository (https://github.com/pyroscope-io/client) and it is better than the old one because it has less dependencies and less performance overhead as it offloads more data processing to the server.
We strongly recommend that you upgrade your golang integrations to use this new version, especially if you previously had issues adding pyroscope to your applications due to a large number of external dependencies.
For more information on this new integration visit our golang docs.
Ability to Delete Apps
We’ve removed the feature flag and now you should be able to delete apps using the new delete apps command
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.4.0-linux-amd64.tar.gz
pyroscope-0.4.0-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.4.0_amd64.deb
pyroscope_0.4.0_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.4.0-1-x86_64.rpm
pyroscope-0.4.0-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.4.0_amd64.msi
Changes:
Bug Fixes
Features
- makes admin command available (GA status) (8eb788f)
v0.3.1
This release comes with 2 big features:
pull mode
Previously all of our integrations only supported pushing metrics from profiling targets to pyroscope server. This new pull mode allows you to specify a list of profiling targets that pyroscope server will scrape the data from. This can be useful in a few cases, particularly ones where you already pull regular metrics via prometheus. Our pull mode implementation makes extensive use of Prometheus scrape and service discovery mechanisms and this allows you to reuse your existing configs with pyroscope. We express our deep gratitude to Prometheus team for their incredible work!
new Golang integration
The new golang integrations now lives in a separate repository (https://github.com/pyroscope-io/client) and it is better than the old one because it has less dependencies and less performance overhead as it offloads more data processing to the server.
We strongly recommend that you upgrade your golang integrations to use this new version, especially if you previously had issues adding pyroscope to your applications due to a large number of external dependencies.
For more information on this new integration visit our golang docs.
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.3.1-linux-amd64.tar.gz
pyroscope-0.3.1-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.3.1_amd64.deb
pyroscope_0.3.1_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.3.1-1-x86_64.rpm
pyroscope-0.3.1-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.3.1_amd64.msi
Changes:
Bug Fixes
- fixes pprof->trie conversion bug where some samples were dropped (#575) (cb33851)
- generate trie from pprof at scraping correctly (#577) (bc704f6)
- Prevent byte buffer pool copy. (#570) (3d1122e)
Features
v0.3.0
This release comes with 2 big features:
pull mode
Previously all of our integrations only supported pushing metrics from profiling targets to pyroscope server. This new pull mode allows you to specify a list of profiling targets that pyroscope server will scrape the data from. This can be useful in a few cases, particularly ones where you already pull regular metrics via prometheus. Our pull mode implementation makes extensive use of Prometheus scrape and service discovery mechanisms and this allows you to reuse your existing configs with pyroscope. We express our deep gratitude to Prometheus team for their incredible work!
new Golang integration
The new golang integrations now lives in a separate repository (https://github.com/pyroscope-io/client) and it is better than the old one because it has less dependencies and less performance overhead as it offloads more data processing to the server.
We strongly recommend that you upgrade your golang integrations to use this new version, especially if you previously had issues adding pyroscope to your applications due to a large number of external dependencies.
For more information on this new integration visit our golang docs.
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.3.0-linux-amd64.tar.gz
pyroscope-0.3.0-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.3.0_amd64.deb
pyroscope_0.3.0_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.3.0-1-x86_64.rpm
pyroscope-0.3.0-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.3.0_amd64.msi
Changes:
Bug Fixes
- alpine: fix the stack overflow on Alpine generated binaries. (#545) (cd5e4f7)
- analytics_test.go on windows (ad6b20d)
- avoid redundant compaction (#514) (c87f69a)
- comparison view timeline (#553) (c615bb7)
- delete apps functionality (#551) (09384f3)
- frontend: fix comparison view (#549) (4c9d2f8)
- ignore ErrServerClosed when admin server is closed (#560) (96ad74f)
- race condition in version update. (#542) (332a7d5)
- timeline guide text alignment (#565) (efc94a0)
- windows: redeclared exec (#513) (d4ab78d)
Features
- add shell completion for 'admin app delete' cmd (#535) (f832f53)
- adds adhoc single view (#546) (4983566)
- adds support for pprof in /ingest endpoint (#557) (f233ef3)
- initial support for adhoc mode (#504) (e5d311e)
- pull mode (#527) (a56aacf)
- support for pprof and collapsed formats in /render endpoint #471 (#518) (0cbf399)
v0.2.5
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.2.5-linux-amd64.tar.gz
pyroscope-0.2.5-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.2.5_amd64.deb
pyroscope_0.2.5_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.2.5-1-x86_64.rpm
pyroscope-0.2.5-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.2.5_amd64.msi
Changes:
- fix: highlight in diff view (#498) (fbb826a), closes #498
- fix: linking flags in the linux build system (#499) (d7446be), closes #499
- fix(agent): snapshotting error handling (#510) (d0e477a), closes #510
- fix(exec): pyspy and rbspy are hanging in blocking mode (#436) (653a1e3), closes #436
- docs: fix typo in deployment diagram (297e3da)
- docs: update deployment diagram for eBPF (1620650)
- feat: segment level-based retention (#431) (2a9834f), closes #431
- refactor(config): decouple internal config from public CLI config in exec and server/storage (#508) (95ceb71), closes #508
- Components lib (#509) (4b6ca15), closes #509
- Improve text when there is no data available (#487) (dcbc39f), closes #487
- Make sidebar links (#489) (44c5ac0), closes #489
- Reduce bundle size (#496) (4f8ed1b), closes #496
- Refactor toolbar/Add "focus on subtree" button (#495) (b804d57), closes #495
- remove unnecessary margin for the buttons (#505) (2f0efaf), closes #505
- chore: get rid of pdf export (#493) (6879d45), closes #493
v0.2.4
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.2.4-linux-amd64.tar.gz
pyroscope-0.2.4-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.2.4_amd64.deb
pyroscope_0.2.4_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.2.4-1-x86_64.rpm
pyroscope-0.2.4-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.2.4_amd64.msi
Changes:
v0.2.3
Installation
For instructions on how to install pyroscope visit our Getting Started guide.
Source code
Linux binary builds
pyroscope-0.2.3-linux-amd64.tar.gz
pyroscope-0.2.3-linux-arm64.tar.gz
Ubuntu / Debian (.deb) builds
pyroscope_0.2.3_amd64.deb
pyroscope_0.2.3_arm64.deb
RHEL / CentOS (.rpm) builds
pyroscope-0.2.3-1-x86_64.rpm
pyroscope-0.2.3-1-aarch64.rpm
Windows (.msi) builds
pyroscope_agent_0.2.3_amd64.msi
Changes:
- feat: improves ebpf integration (#490) (24f5872), closes #490
- Feature/441 "focus on this subtree" (#480) (cfe0ae8), closes #480
- Flamegraph refactor (#477) (deaed44), closes #477
- docs: Add Django Example to Python Examples Folder (#472) (0dab599), closes #472
- docs: add java to agent diagram (8653517)
- docs: adds license scan badge (5dbd5e7)
- docs: delete extra blog post doc (6d807ae)
- docs: update ruby example images (#486) (38554ac), closes #486
- docs: update supported languages (4cd06a2)
- build: optimizes dockerfile, cuts docker image size in half (#476) (ad94706), closes #476
- build(frontend): disables watch mode, improves error message (#482) (67dc7f1), closes #482
- ci: adopts conventional commit convention for changelog update commits (8bccd3d)