Moniteurs de disponibilité

Les moniteurs vérifient des choses depuis l'extérieur de votre application selon un planning et alertent quand elles changent d'état. Sept types partagent la page Disponibilité. Aucun ne nécessite de code sauf les heartbeats, que votre tâche pingue.

1Choisir un type

HTTP : 2xx ou 3xx compte comme en ligne, avec en option un mot-clé requis dans le corps et une limite de temps de réponse. Heartbeat : votre tâche cron pingue une URL secrète ; en retard signifie hors ligne. SSL : handshake TLS vers host:port, la chaîne doit être de confiance, affiche l'émetteur et l'expiration. Domaine : expiration de l'enregistrement via RDAP, affiche le registrar. TCP : connexion à host:port puis fermeture. DNS : A, AAAA, CNAME, MX ou TXT via 1.1.1.1 et 8.8.8.8, avec en option une valeur requise. Navigateur : une liste d'étapes exécutées dans Chromium headless.

2Intervalles

HTTP toutes les 1, 3, 5, 10, 30 ou 60 minutes. Heartbeats de 1 minute à 24 heures avec un délai de grâce de 1 à 60 minutes. SSL et domaine toutes les 1, 6, 12 ou 24 heures. Checks navigateur toutes les 5 à 60 minutes.

3Étapes d'un check navigateur

Jusqu'à 20 étapes sous forme de données, jamais de code. L'étape 1 doit être goto. Actions : goto (url), click (selector), fill (selector, value), expect_text (text), expect_selector (selector), wait (ms). Sélecteurs et texte jusqu'à 300 caractères, valeurs 500, attentes de 10 s chacune et 30 s au total, l'exécution entière 60 s. En cas d'échec, une capture d'écran de la page est conservée sous la ligne. Utilisez un compte de test pour les valeurs fill ; elles sont stockées en clair.

json
[
  { "action": "goto", "url": "https://shop.example.com/login" },
  { "action": "fill", "selector": "#email", "value": "monitor@example.com" },
  { "action": "fill", "selector": "#password", "value": "test-only" },
  { "action": "click", "selector": "button[type=submit]" },
  { "action": "expect_text", "text": "Your orders" }
]

4Comment l'état hors ligne est décidé

Un check échoué est réessayé après 20 secondes et une région n'est en échec qu'au second échec consécutif. Un moniteur avec plusieurs régions n'est hors ligne que lorsqu'une majorité stricte est en échec (1 sur 1, 2 sur 2, 2 sur 3). Les checks de domaine et navigateur utilisent une seule région. Chaque panne et chaque rétablissement génère une alerte via vos canaux ou vers les propriétaires.

Bon à savoir

  • Limites par plan : HTTP, SSL, domaine, TCP et DNS partagent un pool de 10 (Free), 25 (Solo), 100 (Team), 500 (Scale) ; les heartbeats ont les mêmes chiffres dans leur propre pool ; les checks navigateur sont à 0, 3, 20 et 100.
  • Avis supplémentaires : monitor.slow et monitor.fast quand le p95 des 10 derniers checks HTTP franchit la limite de temps de réponse ; monitor.expiring à 14, 7 et 1 jours pour les certificats et 30 et 7 jours pour les domaines, une fois par seuil.
  • Les adresses privées et internes (localhost, 10.x, .local, .internal, etc.) sont refusées à l'enregistrement. Les registres sans RDAP, comme .io, restent en ligne et indiquent que la date d'expiration est indisponible.
  • La disponibilité est affichée sur 24 heures et 30 jours. Les résultats bruts des checks sont conservés 3 jours. L'URL de heartbeat est affichée une fois et peut être remplacée.

Bloqué ? Écrivez à support@blipit.io. Les clés et le DSN exact de chaque projet sont sous Clés API dans app.blipit.io.