---
title: Sentry
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, monitoring, error-tracking, apm, python, javascript, production]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Monitoring, https://github.com/getsentry/sentry]
---

# 📊 Sentry

> **Le standard du tracking d'erreurs applicatif** : capturez exceptions, crashes et performance de vos apps en production, avec contexte complet (stacktrace, user, breadcrumbs).

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [sentry.io](https://sentry.io/) |
| **GitHub** | [getsentry/sentry](https://github.com/getsentry/sentry) |
| **License** | Functional Source License (FSL, custom) |
| **Langage** | Python + JavaScript + Go |
| **Étoiles GitHub** | 44.1k ⭐ |
| **Dernière MAJ** | 2026-06-07 |
| **Catégorie** | [[cat-monitoring|Monitoring]], Error Tracking, APM |

## 📝 Description

**Sentry** est la **référence mondiale du error tracking** pour les développeurs. Initialement Python/Django, il supporte aujourd'hui **40+ langages et frameworks** : JavaScript, Python, Java, Go, Ruby, PHP, .NET, Rust, Swift, Kotlin, Flutter, React Native, etc.

L'idée : **capturer automatiquement les exceptions en production** avec un contexte riche (utilisateur, navigateur, requête HTTP, breadcrumbs, release git, performance). On remplace les logs cryptiques par un **tableau de bord exploitable** avec stacktrace, tags, et aggregation par projet.

- ✅ **Capture d'exceptions** multi-langage avec SDK officiels
- ✅ **Performance Monitoring (APM)** : traces, transactions, requêtes SQL
- ✅ **Release tracking** : corrélation avec vos déploiements git
- ✅ **Source maps** pour débugger le code minifié
- ✅ **Alertes** : email, Slack, PagerDuty, OpsGenie, webhooks
- ✅ **Self-hosted** : contrôle total des données
- ✅ **Multi-projets, multi-équipes**
- ✅ **Replay de session** (Session Replay) — optionnel
- ✅ **Profiling** continu en production
- ✅ **Issue Owners** : assignation automatique

**Public cible** : **développeurs, équipes tech, startups, grands comptes**. Indispensable dès qu'on a une app en production avec des utilisateurs réels.

**Comparaison** : Sentry se distingue de [[app-uptime-kuma]] (qui vérifie qu'un service répond) en allant **plus loin dans la stack applicative** : ce n'est pas l'uptime du serveur, c'est la **santé du code**. Par rapport à [[app-prometheus]] + [[app-grafana]] (métriques système), Sentry se concentre sur les **erreurs et transactions applicatives** avec contexte développeur.

> ⚠️ **License FSL** : la version self-hosted est gratuite, mais **interdite de la revendre en SaaS concurrent**. Pour un usage interne/propre, c'est OK. Le code source est ouvert.

## 🚀 Installation

### Option 1 : Docker Compose (officiel, recommandé)

```yaml
# docker-compose.yml
version: '3.8'
services:
  sentry:
    image: getsentry/sentry:24.6.0
    container_name: sentry
    restart: unless-stopped
    command: run web
    ports:
      - "9000:9000"  # Web UI
    environment:
      SENTRY_SECRET_KEY: "changeme-please-50-chars-min-random"
      SENTRY_POSTGRES_HOST: postgres
      SENTRY_REDIS_HOST: redis
      SENTRY_SMTP_HOST: smtp.example.com
      SENTRY_SMTP_PORT: 587
      SENTRY_SMTP_USER: sentry@example.com
      SENTRY_SMTP_PASSWORD: password
      SENTRY_SMTP_USE_TLS: "true"
    volumes:
      - sentry-data:/var/lib/sentry/files
    depends_on:
      - postgres
      - redis
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.sentry.rule=Host(`sentry.example.com`)"
      - "traefik.http.routers.sentry.entrypoints=websecure"
      - "traefik.http.routers.sentry.tls.certresolver=letsencrypt"

  postgres:
    image: postgres:15
    container_name: sentry-postgres
    restart: unless-stopped
    environment:
      POSTGRES_USER: sentry
      POSTGRES_PASSWORD: sentry
      POSTGRES_DB: sentry
    volumes:
      - sentry-postgres:/var/lib/postgresql/data

  redis:
    image: redis:7-alpine
    container_name: sentry-redis
    restart: unless-stopped

  smtp:
    image: namshi/smtp
    container_name: sentry-smtp
    restart: unless-stopped

volumes:
  sentry-data:
  sentry-postgres:
```

> ⚠️ Sentry est **gourmand en ressources** : comptez **4 Go de RAM minimum**, 2 vCPU, et 20+ Go de disque pour un usage modéré.

### Option 2 : Installation bare-metal (Debian/Ubuntu)

```bash
# Sentry fournit un script d'install officiel
git clone https://github.com/getsentry/self-hosted.git
cd self-hosted
./install.sh
```

## ⚙️ Configuration Initiale

1. **Accéder à l'UI** : `http://IP:9000`
2. **Créer le compte admin** lors du premier lancement (vous y serez invité)
3. **Créer un projet** : choisir la plateforme (Python, Node, React, etc.) → obtenir le **DSN**
4. **Intégrer le SDK** dans votre application :
   ```python
   import sentry_sdk
   sentry_sdk.init(dsn="https://...@sentry.io/123")
   ```
5. **Configurer les alertes** : Settings > Alerts > New Alert Rule
6. **Inviter l'équipe** et assigner les issues par ownership

## 🔄 Alternatives

### Open Source

- **GlitchTip** — Clone léger de Sentry, 100% MIT, sans FSL
- **Errbit** — Ruby, plus ancien, interface austère
- **Highlight.io** — Concurrent direct, error tracking + session replay
- [[app-signoz]] — APM complet, orienté metrics/traces
- **Bugsnag** (commercial, mais avec plan gratuit)

### Comparaison Sentry vs alternatives

| Critère | Sentry | GlitchTip | Highlight.io |
| :--- | :--- | :--- | :--- |
| Self-hosted | ✅ | ✅ | ✅ |
| License | FSL (custom) | MIT | Custom |
| Langages | 40+ | 15+ | 20+ |
| Performance/APM | ✅ | ❌ | ✅ |
| Session Replay | ✅ (payant self-hosted) | ❌ | ✅ |
| Communauté | Énorme | Petite | Moyenne |

**Verdict** : Sentry reste **le standard de facto**. GlitchTip est l'alternative 100% open source pour qui veut éviter la FSL.

### Propriétaires (ce que Sentry remplace)

- **Datadog APM** (très cher, $31/host/mois)
- **New Relic** (payant par utilisateur)
- **Rollbar** (freemium)
- **Bugsnag** (payant)
- **Honeybadger** (payant, surtout Ruby/Python)

## 🔐 Sécurité

- **SSO** : Google, GitHub, OIDC, SAML2 (Enterprise)
- **2FA** obligatoire pour les admins
- **HTTPS** obligatoire via [[app-traefik]] (les DSN transitent en clair sinon)
- **API tokens** avec scopes granulaires
- **Données sensibles** : configurer `beforeSend` pour scrubber les données (PII, mots de passe)

## 📚 Ressources

- [GitHub getsentry/sentry](https://github.com/getsentry/sentry)
- [Documentation officielle](https://docs.sentry.io/)
- [Self-hosted docs](https://develop.sentry.dev/self-hosted/)
- [Pricing cloud](https://sentry.io/pricing/)
- [Blog d'ingénierie](https://sentry.io/blog/)

## Pages Liées

- [[cat-monitoring]] — Catégorie Monitoring
- [[app-uptime-kuma]] — Monitoring d'uptime
- [[app-traefik]] — Reverse proxy HTTPS
- [[app-signoz]] — Alternative APM
- [[observabilite]] — Vue d'ensemble observabilité
- [[checklist-monitoring-minimal]] — Checklist
