SMTP 通知操作指南

简介

SMTP 通知器(airflow.providers.smtp.notifications.smtp.SmtpNotifier)允许用户使用 DAG 级别和任务级别的各种 on_*_callbacks 向 SMTP 服务器发送消息。

您还可以将通知器与 sla_miss_callback 一起使用。

注意

当通知器与 sla_miss_callback 一起使用时,上下文将仅包含传递给回调的值,请参阅 sla_miss_callback

示例代码:

from datetime import datetime
from airflow import DAG
from airflow.operators.bash import BashOperator
from airflow.providers.smtp.notifications.smtp import send_smtp_notification

with DAG(
    dag_id="smtp_notifier",
    schedule_interval=None,
    start_date=datetime(2023, 1, 1),
    catchup=False,
    on_failure_callback=[
        send_smtp_notification(
            from_email="[email protected]",
            to="[email protected]",
            subject="[Error] The dag {{ dag.dag_id }} failed",
            html_content="debug logs",
        )
    ],
):
    BashOperator(
        task_id="mytask",
        on_failure_callback=[
            send_smtp_notification(
                from_email="[email protected]",
                to="[email protected]",
                subject="[Error] The Task {{ ti.task_id }} failed",
                html_content="debug logs",
            )
        ],
        bash_command="fail",
    )

此条目有帮助吗?