Airflow 获取最近一次成功执行DAG的日期
我希望在Airflow中创建一个转换,并且我希望确保自上次运行DAG以来从我的源获取所有数据,以便更新我的目标表。为了做到这一点,我希望能够得到最近成功的执行 我发现了这一点:这让我到达了最终目标的某个地方,然而,这只得到最后一次执行DAG的时间,不管它是否成功Airflow 获取最近一次成功执行DAG的日期,airflow,Airflow,我希望在Airflow中创建一个转换,并且我希望确保自上次运行DAG以来从我的源获取所有数据,以便更新我的目标表。为了做到这一点,我希望能够得到最近成功的执行 我发现了这一点:这让我到达了最终目标的某个地方,然而,这只得到最后一次执行DAG的时间,不管它是否成功 SELECT col1, col2, col3 FROM schema.table WHERE table.updated_at > '{{ last_dag_run_execution_date(dag) }}'; 如果执行失
SELECT col1, col2, col3
FROM schema.table
WHERE table.updated_at > '{{ last_dag_run_execution_date(dag) }}';
如果执行失败(由于连接或类似原因),最后一次执行日期(dag)将更新,但我们错过了前一次dag运行的执行
理想情况下,这将拉动最近的非失败执行。或者,如果有人对我如何实现这一点有任何想法,请告诉我我已将参考问题中的函数更改为使用最新的执行日期,这是气流中的预定义宏,如下所示:
def get_last_dag_run(dag):
last_dag_run = dag.latest_execution_date
if last_dag_run is None:
return '2013-01-01'
else:
return last_dag_run
目前似乎对我有效。我已将引用问题中的函数更改为使用最新的执行日期,这是气流中预定义的宏,例如:
def get_last_dag_run(dag):
last_dag_run = dag.latest_execution_date
if last_dag_run is None:
return '2013-01-01'
else:
return last_dag_run
目前似乎对我有效。返回是否同时显示dag名称和最后执行日期?返回是否同时显示dag名称和最后执行日期?对于此问题的读者,也值得检查[1]、[2],或者对于此问题的读者,也值得检查[1]、[2]或此