Uptime, SSL et page de statut publique

Le suivi d'exceptions vous dit que l'app échoue ; la surveillance uptime vous dit qu'elle ne répond plus du tout. Quiet Guard sonde une URL de votre choix, alerte sur la transition, garde un historique de latence, surveille le certificat TLS, et peut partager tout cela sur une page de statut publique.

La sonde active

Définissez une URL à vérifier dans les Réglages du projet (section Surveillance uptime). Toutes les cinq minutes, Quiet Guard envoie une requête GET :

  • Tout statut inférieur à 400 compte comme opérationnel (redirections comprises), avec le temps de réponse enregistré comme latence.
  • Un 4xx/5xx, un timeout (10 s) ou une erreur de connexion compte comme panne.
  • L'URL doit être publique: les adresses privées et internes sont refusées par la même garde anti-SSRF que les webhooks.

Préférez un endpoint léger comme la route de santé /up de Laravel à une page d'accueil lourde : vous mesurez la disponibilité, pas le temps de rendu.

Alertes panne / rétablissement

Les alertes partent sur les transitions, pas à chaque vérification en échec : une alerte quand le site tombe, une quand il revient. Abonnez vos canaux aux événements uptime.down et uptime.recovered dans l'onglet Alertes du projet (voir Alertes). La protection anti-tempête s'applique.

Les sondes passant toutes les cinq minutes, une panne plus courte que l'intervalle entre deux vérifications peut passer inaperçue, la sonde est un détecteur de fumée, pas un analyseur de paquets.

Historique de latence

Chaque sonde enregistre un échantillon. La vue d'ensemble du projet affiche un graphe de temps de réponse sur 24 heures (fenêtres de 30 minutes, moyennes des vérifications réussies ; les fenêtres de panne apparaissent comme des trous, jamais comme de faux zéros). Les échantillons sont conservés sept jours, indépendamment de la rétention d'événements de votre forfait.

Expiration du certificat TLS

Pour les URL https, une tâche quotidienne lit le certificat directement sur la socket, cela fonctionne même quand la chaîne est cassée, et stocke la date d'expiration, affichée sur la vue d'ensemble du projet.

Vous êtes prévenu deux fois par certificat : une fois au passage sous 14 jours, une seconde à 3 jours (événement ssl_expiring, mêmes canaux). Un certificat renouvelé réarme le cycle. Un certificat déjà expiré n'a pas besoin d'alerte spéciale : la sonde des cinq minutes vérifie les pairs, donc le site tombe « en panne » et alerte par ce chemin.

La page de statut publique

Activez Page de statut publique dans les Réglages du projet et partagez le lien généré, un token non devinable constitue toute l'URL. La page montre :

  • l'état actuel et, en cas de panne, depuis quand ;
  • la disponibilité sur 7 jours: globale et en une barre par jour ;
  • la latence actuelle et moyenne sur 24 heures ;
  • la date de validité du certificat TLS ;
  • les cinq dernières fenêtres de panne.

Rien de sensible n'est exposé : les visiteurs voient le nom du projet et les résultats de sonde, jamais l'URL sondée, les tokens ni aucune donnée applicative. Désactiver la page conserve le token : la réactiver restaure la même adresse, les liens déjà partagés restent valides.

Badge embarquable

Le même token sert aussi un badge SVG plat sur /status/{token}/badge.svg : vert avec la disponibilité sur 7 jours quand le site est en ligne, rouge « down » pendant une panne, gris « n/a » avant la première vérification. Glissez-le dans un README :

markdown
![uptime](https://votre-monitor.example/status/{token}/badge.svg)

Le snippet exact, avec votre vrai token, s'affiche sous l'interrupteur de la page de statut dans les Réglages du projet. Le badge se rafraîchit avec le même cache d'une minute que la page.

Vous lisez la documentation Quiet Guard v1.0.