Я хочу получать уведомление по электронной почте об успешном выполнении задачи, сбое и повторной попытке в GCP composer с использованием Sendgrid.
В настоящее время все задачи в моей группе DAG успешно выполняются. Я хочу получить уведомление в этом случае.
Кроме того, когда определенные задачи завершаются ошибкой или повторяются, я хочу получать и эти уведомления. Я выполнил следующие шаги и не получил никаких уведомлений, когда я принудительно завершил задачу.
- Создано окружение GCP Composer, добавлены переменные окружения.
SENDGRID_MAIL_FROM : [email protected]
SENDGRID_API_KEY :
- Создан после DAG.
import json
from datetime import timedelta, datetime
from airflow import DAG
from airflow.contrib.operators.bigquery_operator import BigQueryOperator
from airflow.contrib.operators.bigquery_check_operator import BigQueryCheckOperator
from airflow.operators.email_operator import EmailOperator
default_args = {
'owner': 'airflow',
'depends_on_past': True,
'start_date': datetime(2020, 3, 30),
'email': ['[email protected]'],
'email_on_failure': True,
'email_on_retry': True,
'retries': 2,
'retry_delay': timedelta(minutes=5),
}
schedule_interval = "05 23 * * *"
dag = DAG(
'DAG_NAME',
default_args=default_args,
schedule_interval=schedule_interval
)
# Config variables
BQ_CONN_ID = ""
BQ_PROJECT = ""
BQ_DATASET = ""
## Task 1
t1 = BigQueryCheckOperator(----)
## Task 2
t2 = BigQueryCheckOperator(----)
## Task 3
t3 = BigQueryOperator(----)
t4 = EmailOperator(
task_id='send_email',
to='[email protected]',
subject='Airflow Alert',
html_content=""" <h3>Email Test</h3> """,
dag=dag
)
# Setting up Dependencies
t1>>t2>>t3>>t4
Я что-нибудь упускаю? Подскажите пожалуйста, что нужно сделать, спасибо.