Alertes Webhook

Ce que fait le canal webhook

Un canal d'alerte webhook envoie un POST HTTP avec un corps JSON vers une URL que vous contrôlez chaque fois qu'un de vos moniteurs change d'état : une vérification échoue, se rétablit, s'exécute en mode dégradé, ou un certificat SSL est sur le point d'expirer. C'est le canal le plus flexible : tout ce qui accepte un webhook JSON entrant peut le consommer.

Forme du payload

Chaque alerte est livrée sous la forme d'un unique objet JSON :

{
"source": "loadfocus",
"event": "check.failed",
"check": { "id": "...", "name": "...", "url": "..." },
"status": "failed",
"location": "...",
"timestamp": "..."
}

Le champ event vaut check.failed, check.degraded, check.recovered, ssl.expiry, domain.expiry, sla.breach, sla.recovered ou test. Pour les événements de vérification, status vaut failed, degraded ou passed (un rétablissement vaut passed). Certains événements ajoutent un objet details, et les champs sans objet, comme status pour une expiration SSL, valent null. Votre endpoint peut s'appuyer sur ces champs pour ouvrir ou résoudre un incident, publier dans un chat ou stocker l'événement. Il n'existe aucun champ pour des en-têtes personnalisés ou un secret de signature : gardez donc l'URL de votre endpoint privée.

Ajouter le canal dans LoadFocus

  1. Rendez-vous sur la page Alert Channels.
  2. Cliquez sur Nouveau canal d'alerte et choisissez Webhook comme type de canal.
  3. Renseignez les deux champs :
    • un Nom pour reconnaître le canal plus tard
    • l'URL du webhook qui recevra le POST (doit commencer par https://)
  4. Cliquez sur Enregistrer le canal.

Juste après la création du canal, LoadFocus lui envoie un POST de confirmation ponctuel (événement test), afin que vous puissiez vérifier que votre endpoint reçoit et analyse le payload sans déclencher un véritable incident. Cliquez sur Tester dans la ligne du canal pour l'envoyer à nouveau.

Fonctionne avec tout webhook JSON

Le même canal pilote de nombreuses destinations :

  • les intégrations entrantes PagerDuty et Opsgenie (ou utilisez les canaux dédiés PagerDuty et Opsgenie pour la création et la résolution automatique d'incidents natives; ces deux-là sont réservés aux forfaits payants, le canal webhook est sur tous les forfaits)
  • des outils d'automatisation comme Zapier et n8n
  • votre propre service, pour exécuter une logique personnalisée à chaque évènement

Attacher le canal à vos vérifications

Créer le canal le rend disponible pour toute votre équipe. Pour router les alertes d'un moniteur spécifique vers votre endpoint, sélectionnez le canal dans les paramètres de notification de la vérification, voir Canaux d'alerte d'une vérification. Les canaux d'alerte sont partagés entre les services LoadFocus, si bien que les alertes de tests de charge et de performance des pages peuvent publier vers le même endpoint.

Dépannage

  • Aucun POST de confirmation n'est arrivé : confirmez que l'URL commence par https:// et qu'elle est accessible depuis l'internet public (les adresses privées et internes sont bloquées), et que votre endpoint renvoie un statut 2xx. Les redirections ne sont pas suivies, utilisez donc l'URL finale.
  • Répondez en moins de 10 secondes, sinon la livraison est considérée comme un timeout.
  • Les membres de l'équipe avec un rôle en lecture seule peuvent voir les canaux mais ne peuvent ni en créer ni en supprimer.