Retour au blog Monitoring - 8 min

Sonde externe de monitoring : ce qu’elle voit et ce qu’elle ignore

Une sonde externe interroge le site comme un visiteur, hors du réseau de l’hébergeur. Elle voit DNS, TLS et HTTP. Elle ne voit pas le CPU.

Une sonde externe de monitoring est un contrôle lancé en dehors de l’hébergement, comme le ferait un visiteur : résoudre le nom, ouvrir TLS, demander une URL, lire le code HTTP et, si vous l’avez demandé, chercher une phrase dans la page. Elle ne se connecte pas à MySQL et ne lit pas le CPU. Son intérêt est précisément cette ignorance : elle échoue quand le public échoue, y compris quand la machine, vue de l’intérieur, a l’air saine.

Le trajet qu’elle emprunte

  1. DNS public. Elle utilise un résolveur, pas le fichier hosts du serveur. Un domaine expiré ou un enregistrement A faux la fait échouer avant toute requête.
  2. Connexion vers l’IP obtenue. Pare-feu, mauvaise route, service arrêté : délai ou refus. Un test sur localhost depuis le serveur, lui, réussit encore.
  3. TLS. Nom du certificat, date, chaîne. Le cadenas que voit le visiteur est celui-là, pas celui affiché dans le panneau si un proxy est devant.
  4. HTTP. Code, redirections, délai jusqu’au premier octet ou jusqu’à la fin du document, selon ce que la sonde chronomètre.
  5. Contenu, si le contrôle le demande. Une chaîne attendue (« Ajouter au panier », le titre). Un 200 qui renvoie une page de maintenance ou un texte injecté échoue alors à cette étape, pas à l’étape du code.

Ce trajet est le même que celui d’un test de disponibilité lancé à la main. La sonde le rejoue sans que quelqu’un y pense à 3 h. Le principe du monitoring est posé dans qu’est-ce que le monitoring web.

Ce qu’elle ne voit pas

  • La charge CPU, la file PHP, une requête SQL lente, tant que la page finit quand même par sortir le bon code et le bon texte dans le délai imparti. Si la lenteur fait dépasser le délai de la sonde, là elle sonne — sans dire que c’est MySQL.
  • Les Core Web Vitals. Il faut un navigateur, ou les données de terrain. Une sonde HTTP ne « clique » pas.
  • Le référencement. Elle ne dit pas si l’URL est indexée.
  • Un parcours en plusieurs étapes (connexion, puis paiement), sauf si une sonde est écrite pour ce parcours. Une sonde d’URL unique ne le devine pas.
  • Les visiteurs d’un pays que vous ne sondez pas. Une sonde en Europe ne prouve pas que le site s’ouvre depuis un autre continent. Ce cas est dans site inaccessible depuis certains pays.

L’agent installé sur le serveur reste utile pour le disque, la RAM, le service qui ne tourne plus. Il complète la sonde. Il ne la remplace pas. Les alertes fournies par l’hébergeur ont la même limite : elles voient la machine, pas toujours le vhost public. D’où pourquoi les alertes de l’hébergeur ne suffisent pas.

Régler une sonde pour qu’elle corresponde au visiteur

RéglageÀ viser
URLUne page critique en https, pas seulement l’IP
Code attendu200 sur une page publique. 503 seulement si vous êtes en maintenance voulue
PhraseUn mot stable du modèle, pas la date du jour
DélaiAssez large pour un pic normal, assez court pour ne pas laisser une page morte « réussir »
Depuis oùUn réseau autre que l’hébergeur. Idéalement pas une IP que votre pare-feu bloque

Le piège classique : le pare-feu autorise le bureau et bloque « les bots ». La sonde est alors en échec en permanence, ou, si vous ouvrez tout pour la faire taire, vous n’avez plus de signal. On autorise l’adresse de la sonde, ou on choisit une sonde dont l’IP est documentée. SiteGarde fait ce type de contrôle externe sur les URL que vous lui donnez : le signal utile est un changement de code, de redirection ou de contenu, pas une courbe de CPU.

Deux sondes sur la même URL, depuis deux réseaux, limitent le faux échec « la sonde a un souci de son côté ». Si une seule échoue, on regarde la sonde. Si les deux échouent, on regarde le site.

Lire un échec

Notez l’étape : DNS, TLS, HTTP, contenu, délai. Cette étape dicte qui on appelle (registrar, hébergeur, personne qui a déployé). Une sonde qui dit seulement « down » sans code ni erreur TLS vous fait tout vérifier. Exigez le détail dans l’alerte, et la dernière réponse réussie à côté.

La sonde ne corrige rien. Elle avance l’heure à laquelle vous apprenez l’échec. Le correctif dépend de la couche, comme dans pourquoi un site est inaccessible.

Questions fréquentes

En quoi une sonde externe diffère-t-elle d’un script sur le serveur ?

Le script sur le serveur interroge souvent localhost. Il peut répondre « OK » alors que le DNS public, le pare-feu ou le certificat empêchent les visiteurs d’entrer. La sonde externe part d’un autre réseau et subit ces étapes.

Une sonde externe mesure-t-elle les Core Web Vitals ?

Pas si elle ne fait qu’une requête HTTP. Elle mesure un code, un délai et parfois la présence d’un texte. Les Core Web Vitals viennent du navigateur des visiteurs ou d’un test qui charge vraiment la page.

Un échec de sonde veut-il dire que le serveur est éteint ?

Non. L’échec dit que cette sonde n’a pas obtenu la réponse attendue. Ça peut être le DNS, le TLS, un 500, un mot manquant dans la page, ou un pare-feu qui bloque l’adresse de la sonde.

Surveiller mes URL