You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Airflow 2.5.1中DAG缺失start_date参数抛出异常问题咨询

问题原因及解决方法

原因分析

在Airflow 2.5.1版本中,尽管部分文档表述不够明确,但**start_date是DAG的强制必填参数**,即使你设置了schedule_interval=None(仅手动触发的DAG),也不能将start_date设为None。

从报错栈可以看到,当DAG添加任务时,Airflow内部会执行校验逻辑:检查DAG是否存在有效的start_date。如果start_date为None,就会抛出DAG is missing the start_date parameter异常。这是因为Airflow需要基于start_date生成任务的执行时间戳,哪怕是手动触发的任务,也依赖这个参数完成元数据记录和执行上下文构建。

解决方法

将start_date设置为一个具体的过去时间(建议使用UTC时区),示例代码如下:

from datetime import datetime, timedelta
import pytz

@dag(start_date=datetime(2023, 1, 1, tzinfo=pytz.UTC),
     schedule_interval=None, 
     max_active_runs=1,
     catchup=False,
     default_args={
         "retries": 1,
         "retry_delay": timedelta(minutes=3)
     },)
def your_dag_name():
    # 任务定义逻辑
    pass

内容的提问来源于stack exchange,提问作者Aadhithya Dinesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 23:39:07