Implementace SmtpNotifier
Po úspěšném vytvoření callback funkce pro selhání tě vedoucí týmu požádal, aby se o každém úspěšném spuštění DAGu odeslal e-mail na týmový alias. Po prostudování dokumentace Airflow se rozhodneš využít vestavěný notifikační framework.
Objekty dag a task jsou už naimportované, callback funkce alert_on_failure a tasky get_sales_data a process_sales_data jsou pro tebe předem definované.
Toto cvičení je součástí kurzu
Úvod do Apache Airflow v Pythonu
Pokyny k cvičení
- Importuj SMTP notifikační objekt.
- Přidej do DAGu atribut pro callback při úspěchu.
- Nastav odesilatele notifikace na [email protected].
- Zadej předmět zprávy.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Import the notifier
from airflow.providers.smtp.notifications.smtp import ____
# Add a success callback notifier
@dag(dag_id='sales_etl_dag',
on_failure_callback=alert_on_failure,
____=SmtpNotifier(
to="____",
from_email="[email protected]",
____="sales_etl_dag run succeeded!"
))
def sales_etl_dag():
get_sales_data() >> process_sales_data()
sales_etl_dag()