Matrice d'escalade - alerter d'autres personnes
Objectif : Configurer une matrice d'escalade qui, après un certain temps d'un incident non résolu (panne), envoie une alerte à d'autres personnes responsables ou vers un autre canal.
Quand utiliser l'escalade
Scénario courant : votre service tombe la nuit, l'astreinte principale ne réagit pas dans les 15 minutes - le système doit automatiquement prévenir le chef d'équipe, puis, après une heure supplémentaire, le manager aussi. L'escalade évite qu'une panne passe inaperçue.
Étape 1 : Créez une politique d'escalade
- Allez dans Dashboard → Escalade (ou à l'adresse
/dashboard/escalation). - Saisissez un nom (par exemple "Astreinte de nuit") et cliquez sur + Nouvelle politique.
Étape 2 : Ajoutez des étapes
Une politique est une séquence d'étapes. Chaque étape contient :
- Délai (min) - au bout de combien de minutes après le début de l'incident l'étape doit se déclencher.
0signifie immédiatement. - Canal -
E-mailouWebhook(Slack, Discord, votre propre endpoint cible). - Destinataires - adresses e-mail séparées par des virgules, ou une adresse de webhook.
- Note - facultatif, ce que le destinataire doit faire.
Exemple d'une politique à 3 niveaux :
- Étape 1 : 0 min, e-mail à l'astreinte principale.
- Étape 2 : 15 min, e-mail au chef d'équipe.
- Étape 3 : 60 min, webhook Slack vers le canal #ops-emergency.
Étape 3 : Attribuez la politique aux moniteurs
Vous pouvez attribuer une politique :
- Globalement - le bouton "Définir par défaut" l'applique à tous vos moniteurs qui n'en ont pas une propre.
- Pour un moniteur spécifique - lors de la création ou de la modification d'un moniteur, sélectionnez une politique précise.
Accusé de réception de l'incident (ACK)
Chaque alerte d'escalade contient un lien ACK (acknowledge, c'est-à-dire "je l'ai vu et je m'en occupe"). Il suffit de cliquer dessus et :
- Les étapes d'escalade suivantes s'arrêtent.
- Le système enregistre qui a accusé réception de l'incident et quand.
- Les autres personnes de la même étape ne reçoivent plus de messages d'escalade pour cet incident.
Le lien ACK ne nécessite pas de connexion - il est signé par un jeton unique (une chaîne à usage unique), de sorte que personne d'autre ne peut en abuser. Une fois l'incident résolu (le moniteur revient à l'état UP), l'escalade se termine également automatiquement.
Format du webhook
Pour Slack, Discord, Microsoft Teams et votre propre endpoint, nous envoyons la requête par la méthode POST. Pour Slack, Discord et Teams, nous formatons le payload nativement (Block Kit / Embed / Adaptive Card). Pour les autres adresses (endpoint personnalisé), nous envoyons un JSON générique :
{
"event": "incident_escalation",
"monitor": {
"name": "Site de production",
"target": "https://example.com",
"url": "https://epulz.io/dashboard/monitor/42"
},
"message": "ESCALATION step 2 (delay 15 min): e-mail au chef d'équipe",
"timestamp": "2026-05-31T14:33:45+00:00",
"source": "epulzio"
}
Le champ event a, lors d'une escalade, la valeur incident_escalation. Le champ message contient une description textuelle de l'étape (ordre de l'étape, délai et description de l'action). D'autres champs (incident_id, step_order, ack_url) n'existent pas au niveau supérieur - le lien ACK fait partie du message formaté dans Slack/Discord/Teams. Pour Slack, l'adresse de l'Incoming webhook suffit. Pour une adresse Discord, le paramètre ?wait=true n'est pas nécessaire.
Questions fréquentes
Que se passe-t-il si l'incident dure plus longtemps que la dernière étape ?
Plus aucune escalade n'est envoyée. Pour des rappels répétés, ajoutez une autre étape avec un délai plus élevé (par exemple 240 min).
L'escalade fonctionne-t-elle aussi pendant les heures silencieuses (Quiet hours) ?
Oui. L'escalade passe par son propre canal (e-mail, webhook) et les heures silencieuses ne s'y appliquent pas - elles ne concernent que les alertes principales.
Puis-je tester la politique sans attendre une panne réelle ?
Le plus simple : créez un moniteur de test avec l'adresse https://test-bad-domain.invalid, attribuez-lui une politique avec un délai court (1 min) et surveillez les e-mails.