配置参考¶
此页面包含 apache-airflow-providers-openlineage
provider 的所有可用 Airflow 配置列表,这些配置可以在 airflow.cfg
文件中或使用环境变量进行设置。
注意
Provider 中嵌入的配置从 Airflow 2.7.0 版本开始使用。在此之前,配置是在 Airflow 核心包中描述和配置的 - 因此,如果您使用的 Airflow 版本低于 2.7.0,请查阅 Airflow 文档以获取 Airflow 核心包中可用的配置选项列表。
注意
更多信息请参阅 设置配置选项。
[openlineage]¶
本节应用 OpenLineage 集成的设置。有关配置及其优先级的更多信息可以在用户指南中找到。
config_path¶
指定 YAML 配置文件路径。这确保了通过 openlineage.yml 文件传递配置的向后兼容性。
- 类型:
字符串
- 默认值:
''
- 环境变量:
AIRFLOW__OPENLINEAGE__CONFIG_PATH
- 示例:
full/path/to/openlineage.yml
custom_run_facets¶
新增于版本 1.10.0。
通过传递一个由分号分隔的完整导入路径字符串来注册自定义运行 Facet 函数。
- 类型:
字符串
- 默认值:
''
- 环境变量:
AIRFLOW__OPENLINEAGE__CUSTOM_RUN_FACETS
- 示例:
full.path.to.custom_facet_function;full.path.to.another_custom_facet_function
dag_state_change_process_pool_size¶
新增于版本 1.8.0。
在调度程序进程内以异步方式处理 DAG 状态更改所使用的进程数。
- 类型:
整数
- 默认值:
1
- 环境变量:
AIRFLOW__OPENLINEAGE__DAG_STATE_CHANGE_PROCESS_POOL_SIZE
debug_mode¶
新增于版本 1.11.0。
如果为 true,OpenLineage 事件将包含有助于调试的信息 - 可能包含大型字段,例如所有已安装的包及其版本。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__DEBUG_MODE
disable_source_code¶
通过将其设置为 true 来禁用在 OpenLineage 事件中包含源代码。默认情况下,除非禁用,否则一些 Operator(例如 Python、Bash)将在事件中包含其源代码。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__DISABLE_SOURCE_CODE
disabled¶
通过将其设置为 true 来禁用发送事件,而无需卸载 OpenLineage Provider。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__DISABLED
disabled_for_operators¶
新增于版本 1.1.0。
通过传递一个由分号分隔的要禁用的 Operator 的完整导入路径字符串,将一些 Operator 排除在发送 OpenLineage 事件之外。
- 类型:
字符串
- 默认值:
''
- 环境变量:
AIRFLOW__OPENLINEAGE__DISABLED_FOR_OPERATORS
- 示例:
airflow.providers.standard.operators.bash.BashOperator; airflow.providers.standard.operators.python.PythonOperator
execution_timeout¶
新增于版本 1.9.0。
OpenLineage 执行元数据提取所需的最大时间(以秒为单位)。请注意,其他配置(有时优先级更高),例如 [core] task_success_overtime,也可能影响 OpenLineage 的执行时间。
- 类型:
整数
- 默认值:
10
- 环境变量:
AIRFLOW__OPENLINEAGE__EXECUTION_TIMEOUT
extractors¶
通过传递一个由分号分隔的完整导入路径字符串来注册自定义 OpenLineage Extractor。
- 类型:
字符串
- 默认值:
无
- 环境变量:
AIRFLOW__OPENLINEAGE__EXTRACTORS
- 示例:
full.path.to.ExtractorClass;full.path.to.AnotherExtractorClass
include_full_task_info¶
新增于版本 1.10.0。
如果为 true,OpenLineage 事件将包含完整的任务信息 - 可能包含大型字段。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__INCLUDE_FULL_TASK_INFO
namespace¶
设置 lineage 数据所属的命名空间,以便在使用多个 OpenLineage producer 时,来自它们的事件能够逻辑上分离。
- 类型:
字符串
- 默认值:
无
- 环境变量:
AIRFLOW__OPENLINEAGE__NAMESPACE
- 示例:
my_airflow_instance_1
selective_enable¶
新增于版本 1.7.0。
如果启用此设置,OpenLineage 集成将不会收集和发送元数据,除非您使用 enable_lineage 方法显式地按 DAG 或 Task 启用它。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__SELECTIVE_ENABLE
spark_inject_parent_job_info¶
新增于版本 2.0.0。
对于支持的 Operator,自动将 OpenLineage 的父作业(命名空间、作业名称、运行 ID)信息注入到 Spark 应用程序属性中。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__SPARK_INJECT_PARENT_JOB_INFO
spark_inject_transport_info¶
新增于版本 2.1.0。
对于支持的 Operator,自动将 OpenLineage 的传输信息注入到 Spark 应用程序属性中。
- 类型:
布尔值
- 默认值:
False
- 环境变量:
AIRFLOW__OPENLINEAGE__SPARK_INJECT_TRANSPORT_INFO
transport¶
将 OpenLineage Client 传输配置作为 JSON 字符串传递,包括传输类型和该类型特有的任何附加选项,如OpenLineage 文档中所述。
当前支持的类型有
HTTP
Kafka
Console
File
Composite
Custom
- 类型:
字符串
- 默认值:
''
- 环境变量:
AIRFLOW__OPENLINEAGE__TRANSPORT
- 示例:
{"type": "http", "url": "http://localhost:5000", "endpoint": "api/v1/lineage"}