Releases: getsentry/self-hosted
25.8.0
Important
If you have .env.custom
or other custom .env
files, make sure to adjust your image value to ghcr.io/getsentry/{project}
instead of getsentry/{project}
. We're no longer publishing Docker images to DockerHub and will be moving to GitHub Container Registry.
We're excited to see so many new contributors bringing their excellent work to this release! Here's what's new:
Default Disallowed IPs
SENTRY_DISALLOWED_IPS
defaults will be changed in the next self-hosted release. These defaults are commented out right now here: getsentry/sentry@4c4eec3, but will be adopted in 25.9.0.
Podman support
We finally addressed that 5 years old issue requesting Podman support. Since podman compose
has become quite compatible with docker compose
, we decided it was time to make this happen. To use it, simply run the install script with CONTAINER_ENGINE_PODMAN=1 ./install.sh
. If you successfully get self-hosted Sentry running with Podman, we'd love to hear about it on our Discord!
Healthchecks for Sentry containers
Previously, only databases and web
containers had healthchecks, which wasn't ideal. We've now added healthchecks to most containers, so you can easily spot which ones are having issues without digging through logs one by one. Just make sure your docker-compose.yml
is updated to take advantage of this improvement.
Various configuration changes
We made several configuration changes that should improve your experience. In docker-compose.yml
, we added some missing containers related to snuba-subscriptions-generic-metrics
, which fixes the issue where metrics alerts weren't triggering properly (see issue #3838).
In sentry.conf.py
, we reorganized the feature flags and added the missing organizations:profiling-view
flag to ensure profiling works correctly in the web UI. One important change: make sure you have SENTRY_OPTIONS["taskworker.enabled"] = False
so your jobs continue running on Celery. We're planning to transition to Taskbroker next month, which will also remove the cron
and worker
containers, reducing the load on Redis (or RabbitMQ) queues.
Other notable changes
- We bumped the minimum bash version to 4.4.0. If you're running CentOS 7, you'll need to either upgrade your distribution or upgrade bash (though the latter is more challenging).
- The
chown
command for thesentry-vroom
volume used to take an unnecessarily long time. We've optimized it to check ownership first before executing the command, making it much faster. - New available preview feature: Native OTLP ingestion! See issue #3830.
- The sentry image is no longer being published on DockerHub. As mentioned in release notes for 25.7.0, we're going to remove workflows to push images to DockerHub in the upcoming months.
For questions or discussion about these changes, join us on Sentry's Discord! We're always happy to chat.
Various fixes & improvements
- feat: Relay healthcheck (#3875) by @aldy505
- fix: setup swapfile only if runner architecture is X64 or X86 (#3876) by @aldy505
- Set minimum bash version to 4.4.0 (#3873) by @aminvakil
- fix: adjust file healthcheck durations (#3874) by @mzglinski
- feat: healthchecks for sentry components (#3859) by @mzglinski
- fix(eap): Fix dataset parameter to target spans (#3866) by @phacops
- build(deps): bump actions/create-github-app-token from 2.0.6 to 2.1.0 (#3865) by @dependabot
- fix(scripts): use
env
to findbash
interpreter (#3861) by @Zaczero - fix(scripts): every known flags should be shifted before executing the sentry command (#3831) by @aldy505
- fix: uptime checker image should be bumped to the tagged release (#3858) by @aldy505
- fix(enhancement): ensure correct ownership check before setting permissions of profiles (#3855) by @LvckyAPI
- chore(features): cleanup feature flags grouped by its' category (#3843) by @aldy505
- fix: add schedulers for generic metrics subscriptions (#3847) by @mzglinski
- feat: Continue using celery in self-hosted for now (#3845) by @markstory
- feat(features): add
profiling-view
flag (#3837) by @aldy505 - Potential fix for code scanning alert no. 12: Workflow does not contain permissions (#3822) by @aldy505
- docs: clearly state that
system.internal-url-prefix
shouldn't be changed (#3829) by @aldy505 - feat(install): Adds support for podman(compose) (#3673) by @DuncanConroy
- fix(action): missing project directory path for failure inspection (#3825) by @aldy505
- Cleanup unused feature flags (#3820) by @doc-sheet
- feat: inspect docker compose failure on self-hosted e2e action (#3817) by @aldy505
25.7.0
Important
Action Required: Update Your Configuration Files!
To make sure you're getting all these new goodies and everything runs smoothly, please remember to update your .env
(or .env.custom
, if any), docker-compose.yml
, and sentry/sentry.conf.py
files to their latest versions. Don't miss any feature flags or additional configurations!
Want to know what changed? Read on.
Uptime Monitoring: Available for Self-Hosted
Our Uptime Monitoring feature is now available for self-hosted Sentry. You can monitor endpoints using private IP addresses by setting UPTIME_CHECKER_ALLOW_INTERNAL_IPS
environment variable to "true," and don't forget to configure the necessary feature flags in your sentry.conf.py
file. This adds a ton of flexibility for monitoring your internal services.
New Containers for Event Analytics Platform
We're introducing new containers related to our Event Analytics Platform. This unifies the storage backend for all Sentry features—errors, traces, logs, and uptimes—under one "platform". This makes correlating events and gaining a clear overview of your services much simpler & accurate. These containers also power the new Logs and Trace Explorer features.
DockerHub to GitHub Container Registry Migration
We are transitioning our default Docker image registry from DockerHub to GitHub Container Registry. You will see some changes on the .env
file. We'll continue pushing new images to DockerHub for a short period, but new pushes will cease in the coming months. We recommend adjusting your configurations to this new standard soon.
Trace Details Link Fixes
Good news: unclickable links in performance details from the last release (you might know GitHub issues #3729 and #3758) have been fixed upstream. As a bonus, the trace-view-v1
flag has also been removed. You can check out the related pull request here.
For further discussion or questions, head over to the Sentry's Discord! We're always there to chat.
Various fixes & improvements
- feat: Swap
trace-view-v1
feature flag withvisibility-explore-view
(#3801) by @aldy505 - fix: set harakiri Django option to 30s (#3792) by @aldy505
- feat(images):Cutover images to ghcr (#3800) by @hubertdeng123
- docs: encourage community patches (#3794) by @aldy505
- feat: run EAP-related containers (#3778) by @aldy505
- feat(uptime): Enable uptime in self-hosted (#3787) by @evanpurkhiser
- feat: make
system.secret-key
configurable from environment variables (#3783) by @aldy505 - ci: run tests on arm64 (#3750) by @aldy505
25.6.2
Bug Fix
This release brings a PostgreSQL migration failure raised from this issue, it was fixed on this PR on sentry.
If you are coming from 25.5.1, you might want to skip 25.6.0 and 25.6.1, and upgrade directly to this version.
This release also brings in a fix on how Docker images are being pushed to DockerHub, mainly for ARM64 users out there:
snuba
,vroom
, andtaskbroker
images now have thelinux/arm64
platform support on thelatest
and CalVer (YY.MM.xx
) tag. Previously there was an error of copying the Docker image.symbolicator
'snightly
tags are now back (PR that fixed this: getsentry/symbolicator#1716)
Various fixes & improvements
- fix: Increase timeout for flakey test (#3781) by @tobias-wilfert
- chore: provide detailed note for sentry endpoint settings (#3780) by @aldy505
25.6.1
Caution
You should skip this release and go directly to the next release (v25.6.2)
Bug Fix
- This release includes a patch that fixes #3766
Various fixes & improvements
- fix(taskworker) Remove num-brokers (#3769) by @markstory
- feat: enable customization sentry DSN endpoint (#3747) by @yildizozgur
- ref(js-assets): Simplify how we call nginx container (#3761) by @BYK
- Revert "fix(vroom): Explicitly set PROFILES_DIR for upcoming change" (#3760) by @hubertdeng123
- fix(vroom): Explicitly set PROFILES_DIR for upcoming change (#3759) by @BYK
25.6.0
Caution
You should skip this release and go directly to the next release (v25.6.2)
New Updates
-
Self-hosted Sentry now supports ARM64 on Linux, so there's no need to run on forks anymore. The install.sh script should run smoothly on ARM64 machines. Feel free to give feedback on #1585
-
Some containers have been added to Docker Compose files, and the SMTP container is swapped with one that's ARM64-compatible and much more powerful—you can even use it as an AWS SES relay! Further details are available in the documentation: https://gitlab.com/egos-tech/smtp
-
Taskbroker is a new service (written in Rust) that aims to replace Celery, which is backed by Redis PubSub. In the next release, Taskbroker will fully replace Celery, taking over the roles of the worker and cron containers.
-
There are some feature flag changes, as we've cleaned up some, and enabled Continuous Profiling. Please ensure your
sentry.conf.p
y is updated to reflect the changes found insentry.conf.example.py
. You can view the file differences using:diff -u sentry/sentry.conf.example.py sentry/sentry.conf.py
. -
Limited by DockerHub image pulls? Replace your image name by prefixing it with
ghcr.io
. For example,getsentry/sentry:nightly
becomesghcr.io/getsentry/sentry:nightly
. It is hosted on GitHub Container Registry.
Various fixes & improvements
- enable shell linter for more scripts (#3748) by @doc-sheet
- feat: migrate to arm64-compatible smtp image (#3746) by @ezhevita
- Introduce patches with external kafka (#3521) by @aldy505
- add shellcheck action to lint bash scripts (#3710) by @doc-sheet
- tests: Install version 2.x of Python SDK (#3745) by @sentrivana
- feat(features): enable continuous profiling (#3742) by @aldy505
- feat: Add taskbroker + worker + scheduler (#3738) by @markstory
- fix(profiles): Run the profile chunks consumer (#3739) by @phacops
- chore: prune removed feature flags on main repository (#3731) by @aldy505
- remove index workaround (#3730) by @asottile-sentry
- Make usage of Python SDK future proof (#3714) by @antonpirker
25.5.1
Important
This release is a hard stop as we've squashed database migrations in sentry. Users must upgrade to 25.5.1 before proceeding to future versions.
Various fixes & improvements
- Add missing lib script to sentry-admin.sh (#3693) by @djakielski
- chore: cleanup obsolete feature flags (#3701) by @doc-sheet
25.5.0
Various fixes & improvements
- build(deps): bump actions/create-github-app-token from 2.0.2 to 2.0.6 (#3690) by @dependabot
- Resolve datetime deprecation warnings (#3686) by @emmanuel-ferdman
- ref: remove SENTRY_USE_BIG_INTS (always True) (#3687) by @asottile-sentry
25.4.0
Stand-alone Docker Compose Fixes
By: @aminvakil (#3658, #3654)
Various fixes & improvements
- chore(relay): specify spool.enveloppe.max_backpressure_memory_percent configuration for handling relay's failing healthcheck (#3635) by @aldy505
- build(deps): bump actions/create-github-app-token from 1.12.0 to 2.0.2 (#3649) by @dependabot
- build(deps): bump actions/create-github-app-token from 1.11.7 to 1.12.0 (#3639) by @dependabot
- Minimum requirements for 'errors-only' profile (#3634) by @madest92
- build(deps): bump actions/create-github-app-token from 1.11.6 to 1.11.7 (#3632) by @dependabot
- feat(sentry): add dynamic sampling feature to config (#3631) by @aldy505
- docs(config): add example config for Google Auth (#3623) by @junsung-cho
- fix: js-sdk directory/file permission should be set correctly (#3616) by @aldy505
- feat(features): enable session replay canvas (#3619) by @aldy505
25.3.0
Various fixes & improvements
- feat(features): enable trace view (#3617) by @aldy505
- feat: provide monitoring-related configurations (#3611) by @aldy505
- Enforce license compliance only on getsentry repository (#3606) by @aminvakil
- Fix unbound variable error in install script (#3601) by @brettdh
- Add --short to docker-compose version (#3605) by @aminvakil
- ref: Less complicated docker compose detection (#3604) by @BYK
- Use docker-compose if version is gte docker compose (#3595) by @aminvakil
- build(deps): bump actions/create-github-app-token from 1.11.3 to 1.11.6 (#3598) by @dependabot
- build(deps): bump getsentry/action-release from 1 to 3 (#3599) by @dependabot
- Bump docker-compose 2.33.1 (#3597) by @aminvakil
- refactor: move system.url-prefix under systems settings section (#3588) by @leeoocca
25.2.0
Various fixes & improvements
- build(deps): bump actions/create-github-app-token from 1.11.2 to 1.11.3 (#3569) by @dependabot
- feat: merge
.env
and.env.custom
file during installation (#3564) by @aldy505 - build(deps): bump actions/create-github-app-token from 1.11.1 to 1.11.2 (#3561) by @dependabot
- feat: Require both inputs to be set on action (#3554) by @BYK
- ref: Simpler and more accurate cache keys (#3553) by @BYK
- Hand off open-source to dev-infra (#3549) by @chadwhitacre
- ci: Remove obsolete
dcr up -w
from import test (#3544) by @BYK - fix: github.action_path may not have trailing slash (#3547) by @BYK
- chore: Remove upgrade test (#3541) by @hubertdeng123
- fix: Use correct path for get compose action (#3539) by @hubertdeng123
- fix: Caching of sentry migrations should cover additional folders (#3542) by @hubertdeng123
- ci: Move self-contained action reference to master branch (#3538) by @BYK
- breaking: Upgrade min Compose version to 2.23.2 (#3535) by @BYK
- ci: Even better cache keys and granular caching (#3534) by @BYK
- test: Reorganize backup/restore tests for speed and reliability (#3537) by @BYK