03 · Alten · banque

Poser des garde-fous avant diffusion

Un dispositif qui bloque la diffusion d'un livrable quand les contrôles ne passent pas, au lieu de se contenter d'alerter.

En bref
  • Détection des scénarios qui ne démarrent pas, pas seulement de ceux qui échouent
  • Contrôles de volumétrie comparés à l'historique
  • Diffusion conditionnée à la réussite des contrôles

La supervision en place remontait bien les échecs : un job plante, une alerte part, quelqu'un intervient. Ce qu'elle ne voyait pas, c'était tout le reste.

Trois façons pour une chaîne de mal se passer

Un scénario peut échouer. C'est le cas confortable : il y a une erreur, donc une alerte, donc quelqu'un qui regarde.

Un scénario peut ne pas démarrer. Un déclencheur désactivé lors d'une intervention et jamais réactivé, une dépendance bloquée, un redémarrage pendant la fenêtre de lancement. Aucune erreur produite, donc aucune alerte. Les données de la veille restent en place et les tableaux de bord affichent quelque chose de parfaitement cohérent.

Un scénario peut enfin réussir en produisant n'importe quoi : source vide, filtre devenu trop restrictif, jointure qui ne matche plus après une modification de référentiel. Statut vert, résultat faux.

Le dispositif

Contrôles mis en place
Exécution
le traitement a-t-il tourné dans la fenêtre attendue ? Comparaison de la dernière exécution réussie à un délai de fraîcheur.
Volumétrie
le volume produit est-il cohérent ? Comparaison à une médiane glissante plutôt qu'à un seuil fixe.
Qualité
les valeurs respectent-elles les référentiels, les taux de nuls et les règles métier attendues ?

Le contrôle de fraîcheur est celui qui manquait le plus. Au lieu d'attendre un événement, il interroge l'état : si un scénario censé tourner chaque nuit n'a pas de run réussi depuis trente heures, c'est une anomalie, même sans erreur.

Point de vigilance : le scénario de supervision ne doit pas dépendre de la chaîne qu'il surveille. S'ils partagent le même déclencheur, ils tombent ensemble et on perd la seule alerte utile.

Bloquer, pas seulement alerter

Une alerte suppose que quelqu'un la lise. À trois heures du matin, personne ne lit. Le vrai garde-fou conditionne la diffusion : si les contrôles sont rouges, le livrable ne part pas.

C'est la partie qui demande le plus de discussion avec les équipes métier, parce qu'elle implique d'accepter une donnée absente plutôt qu'une donnée fausse. L'adhésion vient après le premier incident évité.

J'ai aussi résisté à la tentation de multiplier les vérifications. Un dispositif bruyant finit désactivé au bout de quelques semaines.

Environnement technique

Dataiku DSSScénariosAPI DataikuSQLContrôles qualité

Un besoin similaire ?

Écrivez-moi, je vous réponds sous 48 heures.