Error tracking that keeps the official Sentry SDK
If `@sentry/browser`, `@sentry/nextjs`, or `sentry-python` already ships, the first move is a new host. GlitchTip, Bugsink, Telebugs, Better Stack Errors, and Epure accept a DSN swap. Honeybadger does not. Compatible here means envelope ingest, not full Sentry protocol parity.
On this pageShowHide
Searchers for “keep sentry sdk change dsn” already have the client. Sentry.init stays. You paste a new dsn. Lite backends discard or ignore transactions and skip replay ingest. Leave tracesSampleRate, replaysSessionSampleRate, and profilesSampleRate at 0 so you do not ship volume nobody stores.
Epure speaks envelope plus legacy store. Transactions are discarded. Replay and profiling items are ignored. JS/TS sourcemaps only. Language fixtures exist for Go, Ruby, PHP, Java, and .NET; that is not CI-proven parse for every SDK version. Sentry 8.x+ is not CI-proven on Epure. Platform init: integrations.
Who keeps the SDK
DSN swap
- Sentry: native. Stay if replay or APM is the product.
- GlitchTip: MIT, about four services, 512 MB recommended. Years on this wire.
- Bugsink: one Django container, SQLite-first, Polyform Shield.
- Telebugs: $299 appliance, Rails + SQLite, 1 GB documented minimum.
- Better Stack Errors: hosted DSN built from application token, ingest host, and application id (their public Errors docs). No self-host error box. Flutter obfuscated symbols are not uploaded yet.
- Epure: Apache 2.0, two containers (Rust + PostgreSQL 16), ~82 MiB idle measured 2026-09-12 on Docker Desktop. Cloud Pro $24 coming, not live.
Own SDK
Honeybadger posts to https://api.honeybadger.io/v1/notices with X-API-Key. Changing SENTRY_DSN to a Honeybadger URL will not land issues. This row exists so that query does not get a false yes. Flat SaaS around $26/mo. No self-host.
Sourcemaps
Epure accepts @sentry/cli release file uploads for JS/TS. Point the CLI at the Epure origin (same DSN host) and upload: sentry-cli releases files "$VERSION" upload-sourcemaps ./dist. Minified frames demangle when the event’s release matches. Python, Go, Ruby, PHP, Java, and .NET group on the frames the SDK sent. Sentry still wins native symbols. Guide: Source maps.
Scoreboard
Compatible means envelope or store ingest. Nobody on this page is 100% of Sentry’s protocol.
SDK path
- Sentry
- Native
- GlitchTip
- DSN swap
- Bugsink
- DSN swap
- Telebugs
- DSN swap
- Better Stack
- DSN swap (hosted)
- Honeybadger
- No · own SDK
- Epure
- DSN swap
Sourcemaps
- Sentry
- JS maps + native symbols
- GlitchTip
- Sentry-style artifacts
- Bugsink
- Sentry-style maps
- Telebugs
- See their docs
- Better Stack
- SDK frames; no Flutter symbols yet
- Honeybadger
- Own uploader
- Epure
- JS/TS maps · other langs raw frames
Dropped / unused
- Sentry
- Ingests replay, traces, profiles
- GlitchTip
- Lite clone · not Sentry replay
- Bugsink
- Exception-focused
- Telebugs
- Exception-focused
- Better Stack
- Errors DSN · their examples sample traces
- Honeybadger
- Sentry envelope unused
- Epure
- Transactions discarded · no replay ingest
License
- Sentry
- Cloud proprietary · FSL self-host
- GlitchTip
- MIT
- Bugsink
- Polyform Shield
- Telebugs
- $299 appliance
- Better Stack
- Proprietary SaaS
- Honeybadger
- Proprietary SaaS
- Epure
- Apache 2.0
Footprint
- Sentry
- 20+ containers · 16-32 GB
- GlitchTip
- ~4 services · 512 MB rec
- Bugsink
- 1 container · SQLite
- Telebugs
- 1 container · 1 GB min
- Better Stack
- Hosted
- Honeybadger
- Hosted
- Epure
- 2 containers · ~82 MiB idle
| Dimension | Sentry | GlitchTip | Bugsink | Telebugs | Better Stack | Honeybadger | Epure |
|---|---|---|---|---|---|---|---|
| SDK path | Native | DSN swap | DSN swap | DSN swap | DSN swap (hosted) | No · own SDK | DSN swap |
| Sourcemaps | JS maps + native symbols | Sentry-style artifacts | Sentry-style maps | See their docs | SDK frames; no Flutter symbols yet | Own uploader | JS/TS maps · other langs raw frames |
| Dropped / unused | Ingests replay, traces, profiles | Lite clone · not Sentry replay | Exception-focused | Exception-focused | Errors DSN · their examples sample traces | Sentry envelope unused | Transactions discarded · no replay ingest |
| License | Cloud proprietary · FSL self-host | MIT | Polyform Shield | $299 appliance | Proprietary SaaS | Proprietary SaaS | Apache 2.0 |
| Footprint | 20+ containers · 16-32 GB | ~4 services · 512 MB rec | 1 container · SQLite | 1 container · 1 GB min | Hosted | Hosted | 2 containers · ~82 MiB idle |
Public docs as of 2026-09 (Sentry self-host, GlitchTip install, Bugsink, Telebugs, Better Stack Errors Sentry SDK, Honeybadger notices API). Epure idle RAM measured 2026-09-12 on Docker Desktop.
After the DSN, the split is ops
License is the first fork: MIT (GlitchTip), Apache 2.0 (Epure), Polyform Shield (Bugsink), paid binary (Telebugs), hosted SaaS (Better Stack, Honeybadger, Sentry Cloud). Compose versus hosted is the second: Sentry self-host 20+ containers, GlitchTip about four, Bugsink and Telebugs one, Epure two (app + Postgres), Better Stack a hosted DSN.
Pick Epure if
- Leave @sentry/browser, @sentry/nextjs, or sentry-python in place.
- JS/TS maps via @sentry/cli are enough; other languages can live on raw frames.
- You will set traces, replay, and profile sample rates to 0.
- You want Postgres 16 with RLS, not SQLite as the primary store.
Pick another tool if
- Session replay or distributed tracing is how you debug: stay on Sentry.
- Counsel requires MIT: GlitchTip.
- One SQLite container is the ops model: Bugsink.
- You want $299 once plus vendor email: Telebugs. Honeybadger if you will replace the SDK. Better Stack if you want a hosted Errors DSN.
Roster: Sentry alternatives. Clone: GitHub.