Sentry, feature-complete and packaged up for low-volume deployments and proofs-of-concept.
Documentation on the Self-Hosted Sentry project here.
Folio's use case falls in the "low-volume deployments" category mentioned above.
We run Self-Hosted Sentry from the folio
branch of this fork on a dedicated virtual machine in Google Cloud.
Folio's fork of the Self-Hosted Sentry project deviates slightly from the "official" Self-Hosted Sentry:
What | Default | Folio |
---|---|---|
Postgres | Run Postgres as part of the Docker Compose stack | Use a Cloud SQL instance (and configure the connection via the environment) |
Sentry secret key | No idea what they actually want us to do | Configure via the environment |
Sentry URL prefix | No idea what they actually want us to do | Configure via the environment |
Google SSO | Configure manually (in the Sentry UI) | Configure via the environment |
Slack integration | Configure manually (in the Sentry UI) | Configure via the environment |
GitHub integration | Configure manually (in the Sentry UI) | Configure via the environment |
Send automatic reports Sentry | Yes | No (configured by setting REPORT_SELF_HOSTED_ISSUES="0" ) |
Sentry uses "calendar versioning", so they release:
- One
minor
version on (or just after) the 15th of every month (for example, the November 2024 primary release is tagged24.11.0
) - (As needed)
patch
versions to fix any issues in the previous version (for example, the first November 2024 patch release is tagged24.11.1
)
The Slack channel #sentry-releases is subscribed to new Self-Hosted Sentry releases. Join it so you don't have to remember to check for new releases.
If we have to upgrade through several versions, remember to check if there are any relevant hard stop versions that we cannot skip.
When a new version of Self-Hosted Sentry is released, we can upgrade to it as follows.
(Using the November 2024 primary release (24.11.0
) as an example)
$ git checkout folio
(be on the Folio branch)$ git pull
(pull any changes on thefolio
branch, and fetch the new tag)$ git merge 24.11.0
(merge the new version into thefolio
branch)- (Resolve any merge conflicts, keeping this fork's intended deviations from the main branch in mind)
$ git commit
(commit the merge)$ git tag 24.11.0-folio
(tag the merge commit as${SENTRY_VERSION}-folio
)$ git push
(push the merge commit)$ git push --tags
(push the tag)- Head over to the
infra
repo and follow the steps to deploy a new version.