Cette vidéo montre comment appliquer une gestion d'erreurs et du monitoring efficacement avec Airflow et Cloud Composer dans Google Cloud
💡 Le principe est d'utiliser un intercepteur et une failure callback dans nos DAGs.
Quels sont les avantages de cette pratique ❓ ❓
✅ La logique est 𝐜𝐞𝐧𝐭𝐫𝐚𝐥𝐢𝐬𝐞́ 𝐚̀ 𝐮𝐧 𝐞𝐧𝐝𝐫𝐨𝐢𝐭 afin d'éviter la répétition de ce code technique de gestion d'erreurs à différent endroits dans les DAGs. Cette répétition de code est 𝐞𝐫𝐫𝐨𝐫 𝐩𝐫𝐨𝐧𝐞 et pollue le code d'orchestration dans les DAGs
✅ Nous utilisons le 𝐬𝐞𝐩𝐚𝐫𝐚𝐭𝐢𝐨𝐧 𝐨𝐟 𝐜𝐨𝐧𝐜𝐞𝐫𝐧, car la responsabilité est déléguée ailleurs que dans les DAGs, cette logique est écrite une fois et centralisée à un endroit
✅ Nous pouvons facilement utiliser un pattern de log et l'intercepter avec Cloud Monitoring, une Log Based Metric et une Alerting Policy
✅ Les erreurs sont stockées dans une table BigQuery pour permettre de les analyser plus facilement, via des requêtes sql
✅ Les erreurs sont exposées dans un dashboard Looker Studio, afin de permettre à des partenaires ou acteurs du projet de visualiser la donnée
🔛 🍃 Ce use case utilise les actions suivantes :
➡ Créer une 𝐋𝐨𝐠 𝐁𝐚𝐬𝐞𝐝 𝐌𝐞𝐭𝐫𝐢𝐜 avec Terraform et Cloud Build pour filtrer et intercepter les logs, écrites par la failure callback
➡ Créer une 𝐀𝐥𝐞𝐫𝐭𝐢𝐧𝐠 𝐏𝐨𝐥𝐢𝐜𝐲 basée sur la Log Based Metric précédente, avec Terraform et Cloud Build
➡ Deploy les 𝐃𝐀𝐆𝐬 dans 𝐂𝐥𝐨𝐮𝐝 𝐂𝐨𝐦𝐩𝐨𝐬𝐞𝐫 avec Cloud Build
➡ Simuler 2 erreurs différentes dans 2 DAGs séparés
➡ Vérifier les 𝐞𝐦𝐚𝐢𝐥𝐬 envoyés par l'alerting policy en temps réel
➡ Visualiser le résultat dans la table 𝚍𝚊𝚐_𝚏𝚊𝚒𝚕𝚞𝚛𝚎 dans BigQuery
➡ Visualiser le résultat dans un dashboard 𝙇𝙤𝙤𝙠𝙚𝙧 𝙎𝙩𝙪𝙙𝙞𝙤, qui pointe sur la table 𝚍𝚊𝚐_𝚏𝚊𝚒𝚕𝚞𝚛𝚎. Nous utilisons une partition par jour sur la date d'ingestion pour optimiser les coûts.
#GoogleCloud #Airflow #CloudComposer #errorhandling #monitoring
▸ Github :
https://github.com/tosun-si/airflow-c...
▸ Slides : https://docs.google.com/presentation/...
▸ LinkedIn : https://www.linkedin.com/posts/mazlum...
▸ X : https://x.com/MazlumTosun3/status/178...
Abonnez vous à la chaîne YouTube et cliquez sur la cloche 🔔 pour avoir des notifs sur les prochaines vidéos.
📲 Suivez moi sur réseaux sociaux :
▸ Articles : / mazlum.tosun
▸ X : / mazlumtosun3
▸ LinkedIn : / mazlum-tosun-900b1812
▸ WhatsApp : https://whatsapp.com/channel/0029VaCj...