Issue: Osservabilità unificata con OpenTelemetry

Summary

Standardizzare tracing/metrics/logs con OpenTelemetry su tutti i servizi (HTTP + WebSocket) e aggiungere /ready separato da /health.

Motivation / Risk

  • Correlation-id non basta per tracciare end-to-end; mancano SLO e alert condivisi.
  • Readiness indistinta può causare deploy con dipendenze non pronte.

Plan

  1. Integrare SDK OTel Node e Python nei servizi; propagare trace-id dal gateway.
  2. Esportare trace/metrics su Prometheus/Grafana o APM scelto.
  3. Aggiungere endpoint /ready che verifica dipendenze critiche (DB/Redis).
  4. Definire SLO (p95 latency, error rate) per gateway, auth, realtime.
  5. Dashboard e alert base.

Acceptance Criteria

  • Ogni richiesta HTTP/WS ha trace-id visibile in dashboard.
  • /health e /ready separati; readiness usata nei deployment.
  • Dashboard con p95 e error rate per almeno gateway e user-service.

Notes / Dependencies

  • Richiede deploy di collector/Prometheus; coordinare con Platform.
  • Aggiungere sampling configurabile per ambienti.