fix(alerting): alerte fiable sur l'échec de la vidéo quotidienne du brief
Helm Charts / Detect changed charts (push) Successful in 2m50s
Helm Charts / Detect changed charts (pull_request) Successful in 18s
Helm Charts / Library charts tool (push) Has been skipped
Helm Charts / Application charts pgcat (pull_request) Has been skipped
Helm Charts / Library charts tool (pull_request) Has been skipped
Helm Charts / Application charts pgcat (push) Has been skipped
Helm Charts / Detect changed charts (push) Successful in 2m50s
Helm Charts / Detect changed charts (pull_request) Successful in 18s
Helm Charts / Library charts tool (push) Has been skipped
Helm Charts / Application charts pgcat (pull_request) Has been skipped
Helm Charts / Library charts tool (pull_request) Has been skipped
Helm Charts / Application charts pgcat (push) Has been skipped
ProspectionBriefNotSent (pushed==0, severity info) ne couvrait que la
livraison et déclenchait à tort quand l'étape brief était volontairement
sautée (metrics.py émet brief_rendered=0 aussi sur skip — seul
step_status{step="brief"} distingue skip(2) d'erreur(0)).
Remplacé par deux règles warning, gardées contre le skip :
- ProspectionBriefFailed : rendered==0 AND step_status{brief}!=2 → la
PRODUCTION de la vidéo a échoué (TTS/ffmpeg/PIL ou erreur amont) ;
- ProspectionBriefNotSent : pushed==0 AND rendered==1 → vidéo produite
mais PAS livrée sur Telegram (token/chat_id/API).
Expressions validées en live sur Prometheus (match on(job) prouvé par
requête témoin, les deux exprs vides sur l'état sain du jour). En-tête du
groupe mis à jour : la livraison AM→Telegram est câblée et testée.
Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
+22
-8
@@ -1121,9 +1121,9 @@ prometheus: &prometheus_config
|
||||
alerting_rules.yml:
|
||||
groups:
|
||||
# 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
|
||||
# câblée dans ce cluster — ces règles s'évaluent et sont visibles dans Prometheus
|
||||
# /alerts + le dashboard Grafana « Prospection » (panneau Alertes actives).
|
||||
# run). Livraison : Alertmanager → receiver telegram (chaîne testée live 2026-07-10,
|
||||
# firing + resolved reçus). Visibles aussi dans Prometheus /alerts + le dashboard
|
||||
# Grafana « Prospection » (panneau Alertes actives).
|
||||
- name: prospection
|
||||
rules:
|
||||
- alert: ProspectionRunStale
|
||||
@@ -1162,15 +1162,29 @@ prometheus: &prometheus_config
|
||||
annotations:
|
||||
summary: "Prospection — 0 offre (mission) collectée"
|
||||
description: "Aucune offre au dernier run : collecte France Travail / Free-Work potentiellement cassée."
|
||||
- alert: ProspectionBriefNotSent
|
||||
expr: prospection_brief_telegram_pushed == 0
|
||||
# Vidéo quotidienne : deux modes d'échec distincts, tous deux gardés contre le
|
||||
# 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
|
||||
labels:
|
||||
severity: info
|
||||
severity: warning
|
||||
app: prospection
|
||||
annotations:
|
||||
summary: "Prospection — brief non poussé sur Telegram"
|
||||
description: "Le brief vidéo n'a pas été diffusé sur Telegram au dernier run."
|
||||
summary: "Prospection — la vidéo du brief quotidien n'a pas été produite"
|
||||
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:
|
||||
# - name: Instances
|
||||
# rules:
|
||||
|
||||
Reference in New Issue
Block a user