如何在Apache Airflow中重新运行所有失败的任务?

mot*_*m79 3 airflow

我有一个包含成千上万个任务的Apache Airflow DAG,运行后,说其中有几个失败了。

我修复了导致某些任务失败的错误,我想重新运行“仅失败的任务”。这篇SO文章建议使用GUI“清除”失败的任务:

如何在Airflow上重新启动失败的任务

如果您有少量失败的任务,则此方法有效。

我想知道我们是否可以绕过GUI并通过命令行类似地进行问题处理:

airflow_clear_failed_tasks dag_id execution_data 
Run Code Online (Sandbox Code Playgroud)

小智 10

仅清除失败任务的命令已更新。现在是(截至 2021 年 3 月的 Airflow 2.0):

airflow tasks clear [-s START_DATE] [-e END_DATE] --only-failed dag_id
Run Code Online (Sandbox Code Playgroud)

  • 根据[文档](https://airflow.apache.org/docs/apache-airflow/stable/cli-and-env-variables-ref.html),使用此命令时的日期格式为“YYYY-MM-” DD` (5认同)
  • 使用选项 --only_failed 或 -f (2认同)

kax*_*xil 5

使用以下命令仅清除失败的任务:

airflow clear [-s START_DATE] [-e END_DATE] --only_failed dag_id
Run Code Online (Sandbox Code Playgroud)

文档:https : //airflow.readthedocs.io/en/stable/cli.html#clear