
Étude de cas
Relais
La supervision d’une flotte de capteurs connectés : ingestion, alertes et tableaux de bord pour les équipes terrain.
- Rôle
- Développeur backend et DevOps
- Année
- 2025
- Stack
- Node.js
- NATS
- TimescaleDB
- Grafana
- Kubernetes
Contexte
Un gestionnaire de bâtiments imaginaire avait équipé ses sites de capteurs de température et de qualité d’air, sans outil pour repérer les pannes avant les occupants.
Défi
Les capteurs envoient des mesures en continu, parfois en rafale après une coupure réseau. Il fallait distinguer un capteur muet d’un site entier hors ligne, sans noyer l’astreinte sous les alertes.
Solution
Une file de messages absorbe les rafales ; un service d’agrégation calcule des fenêtres glissantes et ne déclenche une alerte qu’après corrélation par site.
const silentSensors = await db.query<SensorId>(sql`
SELECT sensor_id FROM last_seen
WHERE seen_at < now() - interval '5 minutes'
AND site_id NOT IN (SELECT site_id FROM site_outages)
`)
Résultat
L’astreinte n’est plus réveillée par des alertes inutiles, et la plupart des pannes sont désormais détectées avant tout signalement d’occupant.
