Inizia subitoInizia gratis

Implementare un SmtpNotifier

Ora che hai creato con successo un callback per i fallimenti, il tuo team lead ha chiesto che tutte le esecuzioni del Dag andate a buon fine vengano inviate via email a una mailing list del team. Dopo aver consultato la documentazione di Airflow, decidi che usare il framework di notifier integrato in Airflow è l'opzione migliore.

Gli oggetti dag e task sono già importati, la funzione di callback alert_on_failure e i task get_sales_data e process_sales_data sono già definiti per te.

Questo esercizio fa parte del corso

Introduzione ad Apache Airflow in Python

Visualizza corso

Istruzioni dell'esercizio

  • Importa l'oggetto notifier SMTP.
  • Aggiungi un attributo di callback per il successo al Dag.
  • Invia la notifica a [email protected].
  • Includi un oggetto (subject).

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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()
Modifica ed esegui il codice