Python में Apache Airflow परिचय
Mike Metzger
Data Engineer

on_failure_callback - Dag रन/टास्क फेल होने परon_success_callback - Dag रन/टास्क सफल होने परon_retry_callbackon_skipped_callbackon_execute_callback
context डिक्शनरी पास करता हैcontext में Dag रन/टास्क की जानकारी होती हैcontext["dag"].dag_id - Dag का नामcontext["task_instance"].task_id - टास्क का नामcontext["logical_date"] - Dag रन की तारीखcontext स्वीकार करना चाहिएdef alert_on_failure(context):dag_id = context["dag"].dag_id task_id = context["task_instance"].task_id print(f"Task {task_id} in DAG {dag_id} has failed.")
def alert_on_failure(context): dag_id = context["dag"].dag_id task_id = context["task_instance"].task_id print(f"Task {task_id} in Dag {dag_id} has failed.")@dag(on_failure_callback=alert_on_failure) def sales_etl_dag(): @task() def data_import_task(): raise ValueError("Simulated failure")# Task data_import_task in Dag sales_etl_dag has failed.
SmtpNotifier - ईमेल अलर्ट भेजता हैSlackNotifier - Slack चैनल पर मैसेज पोस्ट करता है
airflow.providers.smtp.notifications.smtp लाइब्रेरी में हैfrom_email और to एट्रीब्यूट चाहिएsubject, html_content आदि शामिल कर सकते हैं@dag(dag_id=`sales_etl_dag`,
on_failure_callback=SmtpNotifier(
to='[email protected]',
from_email='[email protected]',
subject='Dag sales_etl_dag has failed'
)
)

Python में Apache Airflow परिचय