Files
2026-06-09 18:40:21 +02:00

6.9 KiB


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
GitHub 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

📝 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é)

# 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)

# 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 :
    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

Pages Liées