如何解决气流计划程序不适用于每月工作计划
我正在尝试安排每月的气流工作。我将开始日期保持为
'start_date':datetime(2020,9,23),
是上个月的日期(今天的日期);因为有'start_date + schedule_interval'规则。我将时间表间隔设置为:
schedule_interval="20 9 23 * *"
通过此逻辑作业,应在2020/23/10 9:23 UTC上运行。但是我不知道为什么它没有运行甚至没有创建实例。我做对了所有事情,将开始日期保持在一个月之前,甚至尝试使用catchup = True。但这无济于事。
如果我尝试将日程表保持为每天,Job正在运行;例如:
start_date':airflow.utils.dates.days_ago(1)
和计划间隔为:
schedule_interval="20 9 * * *"
和它的工作文件。今天在世界标准时间9.20完成工作。
注意:我已经手动运行过该作业,因此它具有上次执行日期。可能是问题所在。如果是这样,我该如何解决,还是必须创建新工作。
解决方法
更改schedul_interval
可能会导致问题,建议创建一个新的DAG,请参见Common Pitfalls on Apache Airflow Confluence:
当需要更改开始日期和计划间隔时,请更改 dag的名称(又称dag_id)-我遵循约定: my_dag_v1,my_dag_v2,my_dag_v3,my_dag_v4等...
- 更改时间表 时间间隔始终需要更改dag_id,因为先前已运行 TaskInstance将不符合新的计划间隔
- 改变 无需更改schedule_interval的start_date是安全的,但更改为 较早的start_date暂时不会创建任何新的DagRun 在新的start_date和旧的start_date之间,因此任务不会 自动回填到新日期。如果您手动创建 DagRun,任务将被安排,只要DagRun日期在 任务start_date和dag start_date。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。