Tous les articles
2 min de lectureSupervision

Pourquoi un statut vert ne garantit pas qu’un service fonctionne

Un statut vert est une bonne nouvelle : les contrôles configurés ont réussi. Encore faut-il savoir ce qu’ils vérifient. Un processus actif et une connexion utilisateur réussie sont deux résultats différents.

Sommaire

Ce que signifie « vert » ici

Prenons une application web : son processus fonctionne et son port est accessible. Pourtant, la connexion échoue parce qu’un accès nécessaire à la base de données ne fonctionne plus. Si la supervision vérifie uniquement le processus et le port, ces contrôles peuvent continuer à signaler correctement OK. Le parcours de connexion n’a simplement pas été testé.

Il faut donc définir les bons contrôles. Une bonne supervision montre quelles fonctions sont disponibles et où un problème affecte le service.

Du processus à la fonction réelle

Les contrôles de processus et de port sont utiles pour repérer rapidement les pannes élémentaires. Un service utilisé au quotidien nécessite aussi des contrôles fonctionnels adaptés :

  • L’application répond-elle dans un délai raisonnable ?
  • Renvoie-t-elle le contenu attendu, et pas seulement une réponse HTTP réussie ?
  • Un parcours important et précisément délimité peut-il être exécuté avec succès ?

La portée du test dépend du service. Il doit générer peu de charge et éviter toute modification des données de production. Si un compte est nécessaire, seuls les droits utiles au test doivent lui être accordés.

Une alerte doit aider à résoudre le problème

Une alerte utile indique la fonction concernée et les conséquences du problème. Les métriques et les journaux facilitent ensuite le diagnostic. Des nouvelles tentatives, des délais limites et des alertes adaptés permettent de distinguer les anomalies brèves des pannes persistantes.

Le contrôle lui-même doit aussi être testé : détecte-t-il une panne provoquée de manière maîtrisée ? Signale-t-il un dépassement de délai ? L’alerte disparaît-elle après le rétablissement ?

Donner un sens précis au vert

Un statut utile doit être explicable : qu’a-t-on vérifié, à quel moment et selon quel critère de réussite ? Le vert représente alors une fonction précise et effectivement vérifiée.

Un guide pratique est disponible dans le Public Repository: Designing Useful Monitoring Checks.

Pour aller plus loin: Google SRE: Monitoring Distributed Systems.