開始使用免費開始

使用 Jinja 撰寫

隨著你更常使用 Airflow,你加入了各種通知用的 callback,但發現收件匣裡每次都收到相同內容的訊息。當主旨永遠一樣時,很難找到特定那一封。讀到 Airflow 對 Jinja 的支援後,你想到可以在主旨加入具辨識性的資訊,確保你的 Dags 會為每日的執行各寄一份報告。你決定先從更新 sales_update 這個 Dag 開始,讓它在成功完成時,寄出主旨使用樣板的電子郵件給你。

所有必要的 Airflow 匯入都已可用,pull_sales_datagenerate_sales_report 這兩個工作也都已定義。

本練習屬於課程

Python 中的 Apache Airflow 入門

檢視課程

練習說明

  • 設定這個 Dag 在沒有錯誤地完成時寄送電子郵件給你。

  • 設定通知電子郵件的 subject 屬性。

  • 使用 Jinja 樣板把執行日期加入主旨中:

    Sales update successfully processed for YYYY-MM-DD

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Add a notification when successful, including date in the subject
@dag(start_date=datetime(2026,4,30),
     ____=SmtpNotifier(
       from_email="[email protected]",
       to="[email protected]",
       ____="Sales update successfully processed for {{ ____ }}"
     ))
def sales_update():
  pull_sales_data() >> generate_sales_report()
 
sales_update()
編輯並執行程式碼