Migrate from GlitchTip to Epure (DSN cutover)
Already on GlitchTip? Keep the official Sentry SDK. Point dsn at Epure. Two containers. No history import.
On this pageShowHide
This is a peer self-host swap, not a SaaS exit story. Same Sentry wire. New DSN. Fair compare: Epure vs GlitchTip.
GlitchTip vs Epure
Compose
- GlitchTip
- about 4 services (public docs)
- Epure
- 2 (app + PG 16)
License
- GlitchTip
- MIT
- Epure
- Apache 2.0
SDK path
- GlitchTip
- Sentry wire
- Epure
- Sentry wire
Maturity
- GlitchTip
- Years in production
- Epure
- First public cut
| Dimension | GlitchTip | Epure |
|---|---|---|
| Compose | about 4 services (public docs) | 2 (app + PG 16) |
| License | MIT | Apache 2.0 |
| SDK path | Sentry wire | Sentry wire |
| Maturity | Years in production | First public cut |
Host up
- Install Epure: Installation.
docker compose up -d(prod overlay: Compose prod).GET /healthreturns ok.
Project and DSN
Register. Create a project. Copy https://PUBLIC_KEY@your-host/PROJECT_ID from Settings → SDK connection.
Swap only dsn
Leave @sentry/* / sentry-sdk packages unchanged. Replace the GlitchTip DSN string with Epure's.
Sentry.init({ dsn: "https://KEY@your-epure-host/PROJECT_ID", tracesSampleRate: 0, profilesSampleRate: 0, replaysSessionSampleRate: 0, replaysOnErrorSampleRate: 0 })
Zero sample rates
Epure is error tracking only. Setting discarded product lines to 0 stops shipping volume you will not see.
CORS if browser
If browser clients fail after curl succeeds, fix CORS / PUBLIC_URL on the Epure host. See Browser integration.
Capture and verify
- Deploy with the new DSN.
- Send a known exception.
- Confirm 202 and Issues: Verify.
- Retire the GlitchTip project when satisfied.
Stay on GlitchTip when
MIT is required, Django ops are familiar, or you need battle-tested maturity this week.