Video coming soon…

⚡ Setup GlitchTip — Self-Hosted Error Tracking

Deploy GlitchTip on Ubuntu — open-source Sentry-compatible error tracking for application crashes, performance issues, and uptime monitoring.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script — one command sets everything up.
View on GitHub

Quick Install:

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/dev/glitchtip/glitchtip-ubuntu.sh
chmod +x glitchtip-ubuntu.sh
sudo bash glitchtip-ubuntu.sh

Tutorial Steps

1 Download the Script

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/dev/glitchtip/glitchtip-ubuntu.sh

2 Make it Executable

chmod +x glitchtip-ubuntu.sh

3 Run the Installer

The script installs Docker if needed, then sets up the service automatically.

sudo bash glitchtip-ubuntu.sh

4 Access the Web UI

Open your browser and navigate to:

http://<your-server-ip>:8000

5 Create Organization and Integrate SDK

Register an admin account, create your organization and project, copy the DSN, then integrate the Sentry-compatible SDK into your application.

# Register admin account at /register
# Create Organization → Create Project → Copy DSN
# Example DSN: https://KEY@your-domain.com/PROJECT_ID

# Install Sentry SDK (Python example)
pip install sentry-sdk

# In your application
import sentry_sdk
sentry_sdk.init(dsn="https://KEY@your-domain.com/1")

Ports Used

PortPurpose
8000GlitchTip Web UI & API
5432PostgreSQL (internal)
6379Redis (internal)

Overview

GlitchTip is a self-hosted, open-source error tracking platform that is fully compatible with the Sentry SDK. It captures unhandled exceptions, JavaScript errors, performance transactions, and uptime events from your applications, then groups similar events together so you see one meaningful alert per bug — not a flood of identical stack traces. Because GlitchTip uses the same Sentry SDK protocol, any application already instrumented with Sentry can switch by changing a single DSN URL. You get full control over your error data, no per-event pricing, and no rate limits on a server you own.

Why Use It

If you have ever been flooded with thousands of duplicate error emails when a bug hits production, GlitchTip is the solution. It deduplicates errors into issues, tracks frequency over time, and lets you mark issues as resolved so they re-alert only if they reoccur. Unlike log aggregators, GlitchTip understands stack traces natively — it links errors to source files, line numbers, and commit hashes so developers can fix them without detective work.

When You Need It

    Who Should Use It

      Real Use Cases

        Main Features

          How to Use After Installation

            Security Best Practices

              Ports and Firewall Notes

              GlitchTip listens on port 8000 by default. Proxy it through Nginx Proxy Manager with HTTPS — do not expose port 8000 directly since error payloads may contain sensitive variable values. Redis (6379) and PostgreSQL (5432) are internal Docker network services and must not be accessible from outside the host. Celery workers communicate with Redis internally and require no open ports.

              Backup and Maintenance

                Common Mistakes

                  Troubleshooting

                    Alternatives

                    Sentry cloud (5K errors/month free — simplest setup, no server needed), Highlight.io (open-source, adds session replay), Rollbar (cloud, good for PHP), Bugsnag (mobile-focused). GlitchTip is the best self-hosted option when Sentry SDK compatibility and zero per-event cost are the primary requirements.

                    When Not to Use It

                    Skip GlitchTip if you have no instrumented applications — you need at least one app sending events via the Sentry SDK. Also skip it for server-level log aggregation (use Loki/Grafana instead) or infrastructure metrics (use Netdata or InfluxDB). If your error volume is minimal and you are a solo developer, Sentry's free cloud tier (5K events/month) may be simpler than running your own instance.

                    PrismaTechWork Professional Help

                    PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.

                      Contact Us

                      Frequently Asked Questions

                      Is GlitchTip fully compatible with Sentry SDKs?

                      Yes. GlitchTip implements the Sentry event ingestion API, which means any application already using the Sentry SDK (Python, JavaScript, Ruby, PHP, Go, Java, .NET, mobile) can switch to GlitchTip by changing one environment variable — SENTRY_DSN — to point to your GlitchTip server. No code changes are required in your application.

                      Does GlitchTip support performance monitoring?

                      Yes. GlitchTip supports Sentry's performance monitoring protocol, capturing transaction traces, P50/P95 latency, and slow database queries. Enable it in your SDK by setting tracesSampleRate (e.g. 0.1 for 10% sampling). Note that performance data storage can grow quickly — monitor your PostgreSQL disk usage and consider lower sampling rates on high-traffic services.

                      How do I set up the DSN in my application?

                      In your GlitchTip project, go to Settings → Client Keys to find your DSN. It looks like https://PUBLIC_KEY@your-domain.com/PROJECT_ID. Set this as the SENTRY_DSN environment variable in your application, or pass it directly to Sentry.init(). GlitchTip validates the DSN format on inbound events — make sure your domain matches GLITCHTIP_DOMAIN.

                      Can I manage multiple applications from one GlitchTip instance?

                      Yes. GlitchTip supports multiple organisations and multiple projects per organisation, each with its own DSN. Create a project per application or environment (e.g., one for production, one for staging). Team members can be invited to specific organisations with admin, member, or viewer roles. This makes one GlitchTip instance suitable for an entire agency or product portfolio.

                      What alert channels does GlitchTip support?

                      GlitchTip supports email alerts, Slack webhooks, PagerDuty, and generic webhook integrations. Configure alerts per project at Project Settings → Alerts. You can alert on first occurrence of a new issue, on issue frequency thresholds, or on uptime monitor failures. For Telegram or ntfy alerts, use a generic webhook with a small middleware bridge.

                      How much storage does GlitchTip need?

                      Storage depends on your event volume. GlitchTip stores events in PostgreSQL — each event includes the full stack trace, breadcrumbs, and context, typically 5–50 KB per event. A busy application sending 10K events/day at 10 KB average needs around 36 GB/year. Configure event retention (GLITCHTIP_MAX_EVENT_LIFE_DAYS) to automatically purge old events and control database growth.

                      What is the difference between GlitchTip and a log aggregator like Loki?

                      GlitchTip understands application errors natively — it parses stack traces, groups duplicates, tracks issue state (open/resolved/regressed), and provides developer workflow features. Loki treats all logs as plain text streams and requires manual queries to find errors. For application exception tracking, GlitchTip is far superior; for general log search and infrastructure events, Loki/Grafana is the right choice.

                      Can I self-host GlitchTip for a commercial SaaS product?

                      Yes. GlitchTip is released under the MIT licence, which permits commercial use including using it to monitor a paid SaaS product you sell to customers. The only requirement is that you retain the licence notice in the source if you distribute it. There is no per-seat or per-event licensing fee.