Implementando um SmtpNotifier
Agora que você criou com sucesso um callback de falha, sua liderança pediu que todas as execuções bem-sucedidas do Dag fossem enviadas por e-mail para um alias da equipe. Depois de revisar a documentação do Airflow, você decide que usar o framework de notificações integrado do Airflow é a melhor opção.
Os objetos dag e task já estão importados; a função de callback alert_on_failure e as tasks get_sales_data e process_sales_data já estão definidas para você.
Este exercicio faz parte do curso
Introdução ao Apache Airflow em Python
Instruções do exercicio
- Importe o objeto de notificação SMTP.
- Adicione um atributo de callback de sucesso ao Dag.
- Envie a notificação para [email protected].
- Inclua um assunto.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# 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()