气流:如何仅在所有重试失败时发送电子邮件警报

airflow: how to only send email alerts when all retries fail

我有以下气流 dag 的默认参数:

DEFAULT_ARGS = {
    'owner': 'me',
    'depends_on_past': False,
    'email': ['me@me.com'],
    'email_on_failure': True,
    'retries': 4,
    'retry_delay': timedelta(seconds=5)
}

每次特定工作尝试失败时,我都会收到电子邮件提醒。但是,是否可以要求气流仅在所有 retries/attempts 失败时发送警报?

禁用 default_Args 中的 email_on_retry 选项。

DEFAULT_ARGS = {
    'owner': 'me',
    'depends_on_past': False,
    'email': ['me@me.com'],
    'email_on_failure': True,
    'retries': 4,
    'email_on_retry': False,
    'retry_delay': timedelta(seconds=5)
}

因为所有这些电子邮件选项在基本操作员中也可用,以防您想在每个作业上应用不同的选项,例如为某些作业启用重试时的电子邮件警报。

关于在 airflow 中配置邮件的有趣文章 https://www.astronomer.io/guides/error-notifications-in-airflow