相关疑难解决方法(0)

动态改变任务重试次数

重试任务可能毫无意义。例如,如果任务是传感器,并且由于凭据无效而失败,那么以后的任何重试都将不可避免地失败。如何定义可以决定重试是否合理的操作员?

在 Airflow 1.10.6 中,决定是否应重试任务的逻辑位于 中airflow.models.taskinstance.TaskInstance.handle_failure,因此无法在操作员中定义行为,因为这是任务的责任,而不是操作员的责任。

理想的情况是该handle_failure方法是在 Operator 端定义的,这样我们就可以根据需要重新定义它。

我发现的唯一解决方法是使用PythonBranchingOperator“测试”任务是否可以运行。例如,在上述传感器的情况下,检查登录凭据是否有效,然后才将 DAG 流传送到传感器。否则,失败(或分支到另一个任务)。

我的分析正确吗handle_failure?有更好的解决方法吗?

python airflow

6
推荐指数
1
解决办法
4490
查看次数

标签 统计

airflow ×1

python ×1