Skip to the content.

Monitoring et observabilite

Sentry

RaciFlow utilise Sentry pour le suivi des erreurs et la performance (tracing).

Configuration

Parametre Valeur
Organisation na-vln
Projet backend raciflow-backend
Projet frontend raciflow-frontend
SDK backend @sentry/node v10
SDK frontend @sentry/react v10
Taux d’echantillonnage traces 30% (tracesSampleRate: 0.3)

Initialisation backend

Le backend initialise Sentry via le fichier server/_core/instrument.ts, charge avant le serveur Express grace a l’option --import de Node.js :

node --import ./dist/instrument.js dist/index.js

Le DSN Sentry est fourni via la variable d’environnement SENTRY_DSN.

Initialisation frontend

Le frontend utilise @sentry/react avec le DSN injecte au build via la variable VITE_SENTRY_DSN (baked dans le bundle Vite).

Audit automatique quotidien

Un trigger Claude Code est programme pour executer un audit Sentry quotidien :

Healthchecks Docker

Chaque container dispose d’un healthcheck integre :

raci-flow-app

healthcheck:
  test: ["CMD", "wget", "--spider", "-q", "http://localhost:3000"]
  interval: 30s
  timeout: 10s
  retries: 3
  start_period: 15s

raci-flow-postgres

healthcheck:
  test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
  interval: 10s
  timeout: 5s
  retries: 5

raci-flow-redis

healthcheck:
  test: ["CMD", "redis-cli", "ping"]
  interval: 10s
  timeout: 5s
  retries: 3

caddy-proxy

healthcheck:
  test: ["CMD", "curl", "-sf", "http://localhost:2019/config/"]
  interval: 30s
  timeout: 5s
  retries: 3

Verification de l’etat des services

# Vue d'ensemble de tous les containers
docker ps --format "table \t\t"

# Etat detaille d'un container specifique
docker inspect --format='' raci-flow-app

# Historique des healthchecks
docker inspect --format='' raci-flow-app | python3 -m json.tool

Logs

# Logs de l'application (temps reel)
docker logs -f raci-flow-app

# Logs PostgreSQL
docker logs -f raci-flow-postgres

# Logs Redis
docker logs -f raci-flow-redis

# Logs Caddy
docker logs -f caddy-proxy

# Derniers logs avec limite
docker logs raci-flow-app --tail 100 --since 1h

Metriques a surveiller

Metrique Commande
CPU / Memoire containers docker stats
Espace disque volumes docker system df -v
Connexions PostgreSQL actives docker exec raci-flow-postgres psql -U raci_user -d raci_flow -c "SELECT count(*) FROM pg_stat_activity;"
Taille de la base de donnees docker exec raci-flow-postgres psql -U raci_user -d raci_flow -c "SELECT pg_size_pretty(pg_database_size('raci_flow'));"
Memoire Redis docker exec raci-flow-redis redis-cli INFO memory