气流-保持状态重试

时间:2019-10-13 10:06:10

标签: airflow

我的Airflow dag每小时发送一次HTTP PUT请求,并发送小时数。 万一失败,我希望重试请求将包含正文中的原始小时(即使几天后)。

我该如何实现?

1 个答案:

答案 0 :(得分:0)

有几种方法可以实现这一目标,但我建议您看看Airflows XCOM:https://airflow.apache.org/concepts.html?highlight=xcom#concepts-xcom

一个适合您情况的简单示例是创建一个具有2个节点的DAG-NodeA和NodeB。

  1. NodeA运行并将当前时间存储在XCOM中
  2. NodeB运行,从NodeA的XCOM检索时间,然后在正文中发出具有该值的PUT请求。

如果您将来希望重新触发PUT请求,则只需清除DAG中的NodeB。再次运行时,它将检索与最初存储在NodeA的XCOM中相同的时间。