Apache 气流调度程序未按预期每月触发一次任务

Apache airflow scheduler not triggering once in a month task as expected

这是 dag,我想在每个月的固定日期执行,截至目前我一直在每个月的 18 日执行。 但是任务每天都会被调度程序触发。 catchup_by_default = False 在 airflow.cfg 文件中设置为 false

default_args = {
'owner': 'muddassir',
'depends_on_past': True,
'start_date': datetime(2021, 3, 18),
'retries': 1,
'schedule_interval': '0 0 18 * *',
}

图片 1

图 2

图 3

图 4

您在 default_args 中提到了 schedule_interval,这不是安排 DAG 的方式。 default_args 实际上应用于任务,因为它们被传递给 Operators 而不是 DAG 本身。

您可以按如下方式修改您的代码,只需从 default_args 中删除 schedule_interval 并传递它在 DAG 实例 中如下所示,您可以将 catchup 标志设置为 False 以避免任何回填:

# assuming this is how you initialize your DAG
dag = DAG('your DAG UI name', default_args=default_args, schedule_interval = '0 0 18 * *', catchup=False)