【问题标题】:Why does Apache Airflow return execution_date = None?为什么 Apache Airflow 返回 execution_date = None?
【发布时间】:2020-07-15 09:59:49
【问题描述】:

我有兴趣收集内部气流变量“execution_date”。但是,它在其他 dag 任务中正常工作时返回 None。

有人知道为什么吗?

【问题讨论】:

    标签: airflow


    【解决方案1】:

    博尔哈!

    我无法确定错误的来源,因为没有关于此执行的上下文。首先要说的是,作为 Python **kwargs 约定的一部分通过 context 名称传递的任何内容都不是您所期望的。

    您可以部分说明这一点,因为您的kwargs 集合将始终是dictionary,因此具有.get() 方法,如果密钥不存在,它将默认并返回None

    因此,无论在何种上下文中调用此函数,都没有额外的名为 execution_date 的关键字参数。

    这一点再次得到证实,您没有在他的函数中的任何其他地方使用该变量。为了尝试调查,我会让您的系统打印或记录上下文作为第一步。然后从那里开始工作


    我猜你正在做的是使用PythonOperator 来执行这个可调用的data_per_sheet

    在这种情况下,这个错误实际上只有一个来源。您需要使用provide_context=True 定义您的任务。

    【讨论】:

      猜你喜欢
      • 2022-01-08
      • 2013-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-29
      • 2015-06-18
      • 2016-06-20
      相关资源
      最近更新 更多