НачатьНачать бесплатно

Реализация SmtpNotifier

Вы успешно создали callback-функцию для обработки ошибок, и теперь руководитель команды просит настроить отправку уведомлений об успешных запусках DAG на командный псевдоним электронной почты. Изучив документацию Airflow, вы решаете воспользоваться встроенным механизмом уведомлений Airflow.

Объекты dag и task уже импортированы, callback-функция alert_on_failure, а также задачи get_sales_data и process_sales_data уже определены.

Это упражнение является частью курса

Введение в Apache Airflow на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте объект SMTP-уведомителя.
  • Добавьте атрибут callback-функции успешного выполнения в DAG.
  • Отправьте уведомление на адрес [email protected].
  • Укажите тему письма.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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()
Редактировать и запускать код