Métriques, logs et traces
Les trois piliers de l'observabilité
- Métriques : valeurs numériques mesurées dans le temps (CPU%, latence, nombre de requêtes/seconde). Légères, faciles à agréger et à alerter dessus.
- Logs : événements textuels horodatés produits par une application ou un système. Riches en détail, mais volumineux et coûteux à stocker/rechercher à grande échelle.
- Traces : suivent le parcours complet d'une requête à travers plusieurs services, utiles pour identifier où un ralentissement se produit dans une architecture distribuée.
Métriques essentielles à surveiller
| Catégorie | Exemples |
|---|---|
| Système | CPU%, RAM utilisée, espace disque, I/O disque |
| Réseau | Latence, perte de paquets, bande passante |
| Application | Temps de réponse, taux d'erreur, requêtes/seconde |
| Métier | Nombre de commandes, taux de conversion (spécifique à l'activité) |
Les 4 signaux dorés (Golden Signals)
Popularisés par Google SRE, ces 4 métriques suffisent souvent à détecter la majorité des problèmes d'un service :
- Latence : temps de réponse
- Trafic : volume de requêtes
- Erreurs : taux de requêtes échouées
- Saturation : à quel point une ressource est proche de sa limite
Cas concret
Une application web ralentit progressivement sur plusieurs jours sans qu'aucune alerte ne se déclenche, car seule la disponibilité (up/down) était surveillée. Ajouter le suivi de la latence (95e percentile) aurait révélé la dégradation progressive bien avant qu'elle ne devienne critique et visible des utilisateurs.
Erreurs fréquentes
- Ne surveiller que la disponibilité binaire (up/down) : un service "up" mais très lent est tout aussi problématique pour l'utilisateur, et invisible avec ce seul indicateur.
- Stocker tous les logs indéfiniment sans stratégie de rétention : coût de stockage qui explose sans bénéfice proportionnel.
- Confondre moyenne et percentile : une latence moyenne de 200ms peut masquer que 5% des requêtes prennent plus de 5 secondes.
À retenir
- Métriques = légères et alertables, Logs = détaillés mais coûteux, Traces = suivent une requête across services.
- Les 4 signaux dorés (latence, trafic, erreurs, saturation) couvrent la majorité des besoins de supervision.
- Un percentile élevé (95e, 99e) révèle des problèmes que la moyenne masque.
Mini-exercice
Une application affiche une latence moyenne excellente de 100ms, mais des utilisateurs se plaignent de lenteurs occasionnelles sévères. Quelle métrique consulter pour comprendre, plutôt que la moyenne ?
Réponse : le percentile élevé (95e ou 99e) de la latence, qui révèle les requêtes les plus lentes que la moyenne masque en les diluant parmi la majorité des requêtes rapides.