Airflow调度异常:每月第3周六任务每日运行问题排查求助
问题排查与修复
核心问题:DAG定义存在语法错误,导致调度配置未生效
你的DAG代码中有两处语法错误,直接导致Airflow无法正确解析调度规则,进而出现不符合预期的运行行为:
- 参数分隔错误:
dag_id='JOB1'末尾缺少逗号,Python会将后续的start_date参数错误解析为前一个参数的一部分,引发参数解析异常 - 参数名拼写错误:
max active runs是无效参数名,正确写法应为max_active_runs(下划线连接,无空格),空格会导致Python识别为非法参数,触发Airflow使用默认配置或加载失败
修正后的DAG代码
from datetime import datetime from airflow import DAG # 假设args是已定义的default_args dag = DAG( dag_id='JOB1', start_date=datetime(2022, 1, 1), schedule_interval='15 9 * * 6#3', default_args=args, max_active_runs=1, catchup=False )
补充说明
- 你使用的
15 9 * * 6#3cron表达式在Airflow 2.1.3中是合法的,正确表示每月第三个周六的09:15,表达式本身没有问题 - 修复语法错误后,重新部署DAG并等待Airflow调度器刷新配置,任务即可按照预期时间运行
内容的提问来源于stack exchange,提问作者z_1_p
相关产品推荐
相关产品推荐

