gpt4 book ai didi

airflow - 如何在 Airflow 中检索追赶作业的 'scheduled time'?

转载 作者:行者123 更新时间:2023-12-04 14:25:14 26 4
gpt4 key购买 nike

在构建 Airflow dag 时,我通常会指定一个简单的计划来定期运行 - 我希望这是最常见的用途。

dag = DAG('my_dag',
description='this is what it does',
schedule_interval='0 12 * * *',
start_date=datetime(2017, 10, 1),
catchup=False)

然后我需要在我的实际过程中使用“日期”作为参数,所以我只检查当前日期。
date = datetime.date.today()
# do some date-sensitive stuff
operator = MyOperator(..., params=[date, ...])

我的理解是设置 catchup=True将为 start_date 之间的每个调度间隔安排 Airflow 调度我的 dag现在(或 end_date);例如每天。

我如何获得 scheduled_date在我的 dag 实例中使用?

最佳答案

我想你在这里指的是执行日期,你可以在你的操作符中使用宏,更多细节可以在这里找到:https://airflow.apache.org/code.html#macros .所以 Airflow 会尊重它,所以你不需要你的 date动态生成

在 Operator 内部,您可以拨打 {{ ds }}直接在 str 中

在 Operator 之外,例如 PythonOperator,您将需要 provide_context=True先然后通过**kwargs作为函数的最后一个参数,你可以调用 kwargs['ds']

关于airflow - 如何在 Airflow 中检索追赶作业的 'scheduled time'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47075348/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com