在 Apache Airflow 中,上下文对象(Context) 是一个非常重要的概念。它包含了任务运行时所需的各种信息和参数,允许任务访问与当前执行环境相关的数据。上下文对象通常通过 **kwargs
或 context
参数传递给 Python 函数(例如在 PythonOperator
中)。
上下文对象的作用
上下文对象提供了任务执行时的元数据和环境信息,包括:
-
任务实例信息:如任务 ID、DAG ID、执行日期等。
-
DAG 运行信息:如 DAG 运行的配置参数(
dag_run.conf
)。 -
宏变量:如
ds
(执行日期)、next_ds
(下一次执行日期)等。 -
任务依赖信息:如前一个任务的状态、任务的上下游关系等。
-
其他运行时信息:如日志、任务重试次数等。
通过上下文对象,任务可以动态地访问这些信息,从而实现更灵活的逻辑。
如何访问上下文对象
在 Airflow 中,上下文对象通常通过以下方式传递给任务:
-
在
PythonOperator
中:-
设置&nbs
-