Merge pull request 'fix(alerting): alerte fiable sur l'échec de la vidéo quotidienne du brief' (#12) from arcodange/alert-brief-video into main
This commit was merged in pull request #12.
This commit is contained in:
+22
-8
@@ -1121,9 +1121,9 @@ prometheus: &prometheus_config
|
|||||||
alerting_rules.yml:
|
alerting_rules.yml:
|
||||||
groups:
|
groups:
|
||||||
# Pipeline prospection (métriques poussées au Pushgateway job=prospection en fin de
|
# Pipeline prospection (métriques poussées au Pushgateway job=prospection en fin de
|
||||||
# run). NB : la LIVRAISON des alertes (Alertmanager → Telegram/…) n'est pas encore
|
# run). Livraison : Alertmanager → receiver telegram (chaîne testée live 2026-07-10,
|
||||||
# câblée dans ce cluster — ces règles s'évaluent et sont visibles dans Prometheus
|
# firing + resolved reçus). Visibles aussi dans Prometheus /alerts + le dashboard
|
||||||
# /alerts + le dashboard Grafana « Prospection » (panneau Alertes actives).
|
# Grafana « Prospection » (panneau Alertes actives).
|
||||||
- name: prospection
|
- name: prospection
|
||||||
rules:
|
rules:
|
||||||
- alert: ProspectionRunStale
|
- alert: ProspectionRunStale
|
||||||
@@ -1162,15 +1162,29 @@ prometheus: &prometheus_config
|
|||||||
annotations:
|
annotations:
|
||||||
summary: "Prospection — 0 offre (mission) collectée"
|
summary: "Prospection — 0 offre (mission) collectée"
|
||||||
description: "Aucune offre au dernier run : collecte France Travail / Free-Work potentiellement cassée."
|
description: "Aucune offre au dernier run : collecte France Travail / Free-Work potentiellement cassée."
|
||||||
- alert: ProspectionBriefNotSent
|
# Vidéo quotidienne : deux modes d'échec distincts, tous deux gardés contre le
|
||||||
expr: prospection_brief_telegram_pushed == 0
|
# skip volontaire — metrics.py met brief_rendered=0 aussi quand l'étape est
|
||||||
|
# SAUTÉE (cadence/kill-switch), seul step_status distingue skip(2) d'erreur(0).
|
||||||
|
- alert: ProspectionBriefFailed
|
||||||
|
# PRODUCTION en échec : l'étape brief a tourné mais n'a pas rendu la vidéo.
|
||||||
|
expr: prospection_brief_rendered == 0 and on(job) prospection_step_status{step="brief"} != 2
|
||||||
for: 15m
|
for: 15m
|
||||||
labels:
|
labels:
|
||||||
severity: info
|
severity: warning
|
||||||
app: prospection
|
app: prospection
|
||||||
annotations:
|
annotations:
|
||||||
summary: "Prospection — brief non poussé sur Telegram"
|
summary: "Prospection — la vidéo du brief quotidien n'a pas été produite"
|
||||||
description: "Le brief vidéo n'a pas été diffusé sur Telegram au dernier run."
|
description: "L'étape brief a échoué au dernier run (rendu vidéo KO : TTS/ffmpeg/PIL ou erreur amont). Voir les logs du CronJob prospection."
|
||||||
|
- alert: ProspectionBriefNotSent
|
||||||
|
# LIVRAISON en échec : vidéo produite mais pas poussée sur Telegram.
|
||||||
|
expr: prospection_brief_telegram_pushed == 0 and prospection_brief_rendered == 1
|
||||||
|
for: 15m
|
||||||
|
labels:
|
||||||
|
severity: warning
|
||||||
|
app: prospection
|
||||||
|
annotations:
|
||||||
|
summary: "Prospection — brief produit mais non poussé sur Telegram"
|
||||||
|
description: "La vidéo du brief a été rendue mais l'envoi Telegram a échoué (token/chat_id/API). Voir les logs du CronJob prospection."
|
||||||
# groups:
|
# groups:
|
||||||
# - name: Instances
|
# - name: Instances
|
||||||
# rules:
|
# rules:
|
||||||
|
|||||||
Reference in New Issue
Block a user