Airflow 如何检索';计划时间';用于气流中的捕捉作业?

Airflow 如何检索';计划时间';用于气流中的捕捉作业?,airflow,apache-airflow,Airflow,Apache 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 = datet

在构建气流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
和now(或
end_date
)之间的每个计划间隔内安排我的dag;e、 每天


如何获取在我的dag实例中使用的
scheduled\u date

我想你这里指的是执行日期,你可以在操作符中使用宏,更多细节可以在这里找到:。因此,airflow将尊重它,因此您不需要动态生成
日期

在操作符内部,您可以直接在str中调用
{{ds}


在操作符之外,例如PythonOperator,首先需要
provide_context=True
,然后将
**kwargs
作为最后一个参数传递给函数,然后可以调用
kwargs['ds']

Perfect。在我看来,
执行日期
是任务实际运行的时间,通常是“现在”,但这是有意义的,而且是有效的。@Chengzhi我们如何在DockerOperator中做到这一点。