CaenHackYouAcademy
Observabilité

Logs, métriques et traces

Trois signaux, trois usages — et l'erreur de vouloir tout mettre dans un seul.

La supervision classique répond à « le service est-il debout ? ». L'observabilité vise plus haut : comprendre un comportement qu'on n'avait pas anticipé, sans redéployer pour ajouter une trace.

Trois signaux s'en chargent, et ils ne sont pas interchangeables.

SignalRépond àCoût
Métriquecombien, à quel rythme ?faible, agrégé
Logque s'est-il passé sur cette requête ?élevé, volume brut
Traceoù le temps est-il passé, service par service ?moyen, échantillonné

Une métrique dit qu'un pourcentage d'erreurs est passé de 0,1 % à 12 %. Elle ne dira jamais pourquoi : c'est le rôle du log. Et si la lenteur traverse six services, seule la trace montre lequel attend les cinq autres.

Le piège de la cardinalité

Une métrique est bon marché parce qu'elle agrège. Ajouter une étiquette à forte cardinalité — un identifiant utilisateur, une URL complète — crée une série temporelle par valeur distincte.

http_requests_total{route="/user/42"}     ← une série par utilisateur
http_requests_total{route="/user/:id"}    ← une seule série

C'est la première cause d'explosion de facture, et de bases de séries temporelles à genoux. Ce qui est unique par requête appartient au log ou à la trace, jamais à l'étiquette d'une métrique.

Journaliser un corps de requête complet « au cas où » revient à recopier des données personnelles dans un système rarement chiffré, souvent largement accessible, et conservé des mois. Les journaux entrent dans le champ du RGPD au même titre que la base de données.

Le piège classique

Alerter sur une cause plutôt que sur un symptôme produit du bruit. « La charge CPU dépasse 80 % » se déclenche la nuit pendant un batch, sans qu'aucun utilisateur ne soit gêné. « Le taux d'erreur dépasse 1 % sur cinq minutes » décrit ce que l'utilisateur subit. On alerte sur ce qui se voit du dehors, et on garde les causes pour le diagnostic.

VérificationQuestion 1 / 3

Réponse unique

Une requête est lente et traverse six services. Quel signal identifie celui qui ralentit la chaîne ?

Indice · Lequel des trois suit une requête unique à travers plusieurs services ?

[ METTRE EN PRATIQUE ]

Choisir le bon signal

3 étapes · 25 min · 120 XP

[ CETTE LEÇON DANS LES PARCOURS ]

On this page