气流:改变气流中DAG的crontab时间

Dav*_*sta 12 airflow

我有一个DAG,每天凌晨3点运行,过去几周运行正常.

我已经更新了现在7点运行的日期,但显然最近2天没有运行.我可以看到状态为"正在运行"(绿色)的那两天的任务,但是没有触发任何命令.

是否需要做更多的事情才能改变DAG的运行时间?

我知道在过去,解决这个问题的一种方法是在元数据库中清理此DAG的任务,并更新start_date,但我宁愿避免再次这样做.

有人有建议吗?

p.m*_*aes 12

大卫,

安排dag Airflow只需查找最后一个execution date并将其相加schedule interval.如果这个时间已经过期,它将会运行dag.您不能简单地更新开始日期.一个简单的方法做,这是编辑start dateschedule interval重命名您的DAG(如xxxx_v2.py)和重新部署.

  • 我找不到讨论,但在陷阱中提到了它:https://cwiki.apache.org/confluence/display/AIRFLOW/Common+Pitfalls (2认同)
  • 常见陷阱页面已移动:https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=62694614 (2认同)

Con*_*nor 5

重命名 DAG 的替代解决方案是编辑execution_date数据库中 DAG 的所有先前任务实例和 DAG 运行的 。要更改的表分别是task_instancedag_run

这种方法的缺点之一是您将无法通过网络服务器浏览已完成任务的日志。

  • 嗯,但不重命名 DAG 的主要目的是保留日志,不是吗? (2认同)