配置参考

此页面包含所有可用的 Airflow 配置列表,您可以在 airflow.cfg 文件中设置或使用环境变量进行设置。

在所有 Airflow 组件中使用相同的配置。虽然每个组件不需要全部配置,但有些配置需要相同,否则它们将无法按预期工作。一个很好的例子是 secret_key,它在 Webserver 和 Worker 上应该相同,以允许 Webserver 从 Worker 获取日志。

当检索日志时,Web服务器密钥也用于授权对 Celery 工作者的请求。使用密钥生成的令牌具有较短的过期时间 - 请确保运行 Airflow 组件的所有机器上的时间都已同步(例如使用 ntpd),否则在访问日志时可能会收到“forbidden”错误。

注意

更多信息请参考 设置配置选项

特定提供程序配置选项

一些提供程序有自己的配置选项,您将在提供程序的文档中找到其配置的详细信息。

您可以在 provider 包的特定配置 中找到所有提供程序配置。

Airflow 配置选项

[api]

access_control_allow_headers

2.1.0 版本新增。

用于响应预检请求,以指示在发出实际请求时可以使用哪些 HTTP 标头。此标头是服务器端对浏览器 Access-Control-Request-Headers 标头的响应。

类型

字符串

默认值

''

环境变量

AIRFLOW__API__ACCESS_CONTROL_ALLOW_HEADERS

access_control_allow_methods

2.1.0 版本新增。

指定访问资源时允许的方法。

类型

字符串

默认值

''

环境变量

AIRFLOW__API__ACCESS_CONTROL_ALLOW_METHODS

access_control_allow_origins

2.2.0 版本新增。

指示是否可以与来自给定来源的请求代码共享响应。用空格分隔 URL。

类型

字符串

默认值

''

环境变量

AIRFLOW__API__ACCESS_CONTROL_ALLOW_ORIGINS

auth_backends

2.3.0 版本新增。

用于验证 API 用户身份的身份验证后端列表,以逗号分隔。有关可能的值,请参阅 安全:API。(“airflow.api.auth.backend.default” 由于历史原因允许所有请求)

类型

字符串

默认值

airflow.api.auth.backend.session

环境变量

AIRFLOW__API__AUTH_BACKENDS

enable_experimental_api

2.0.0 版本新增。

启用已弃用的实验性 API。请注意,这些 API 端点没有访问控制。经过身份验证的用户拥有完全访问权限。

警告

实验性 REST API 自 2.0 版本起已弃用。请考虑使用 稳定的 REST API。有关迁移的更多信息,请参阅 RELEASE_NOTES.rst

类型

布尔值

默认值

False

环境变量

AIRFLOW__API__ENABLE_EXPERIMENTAL_API

enable_xcom_deserialize_support

2.7.0 版本新增。

指示 xcomEntries 端点是否支持 deserialize 标志。如果设置为 False,则在请求中设置此标志将导致 400 Bad Request 错误。

类型

布尔值

默认值

False

环境变量

AIRFLOW__API__ENABLE_XCOM_DESERIALIZE_SUPPORT

fallback_page_limit

2.0.0 版本新增。

用于在 API 请求中 limit 参数为零或未提供时设置默认页面限制。否则,如果在 API 请求中以正整数形式传递 limit,则将用户给定限制或最大页面限制的最小值作为限制。

类型

整数

默认值

100

环境变量

AIRFLOW__API__FALLBACK_PAGE_LIMIT

google_key_path

2.0.0 版本新增。

Google Cloud Service Account 密钥文件(JSON)的路径。如果省略,将使用基于 应用程序默认凭据 的授权。

类型

字符串

默认值

''

环境变量

AIRFLOW__API__GOOGLE_KEY_PATH

示例

/files/service-account-json

google_oauth2_audience

2.0.0 版本新增。

用于授权的 JWT 令牌凭证的目标受众。此值必须在客户端和服务器端匹配。如果为空,则不会测试受众。

类型

字符串

默认值

''

环境变量

AIRFLOW__API__GOOGLE_OAUTH2_AUDIENCE

示例

project-id-random-value.apps.googleusercontent.com

maximum_page_limit

2.0.0 版本新增。

用于设置 API 请求的最大页面限制。如果作为参数传递的 limit 大于最大页面限制,它将被忽略,并将最大页面限制值设置为限制。

类型

整数

默认值

100

环境变量

AIRFLOW__API__MAXIMUM_PAGE_LIMIT

access_control_allow_origin (已弃用)

自 2.2.0 版本起已弃用:该选项已移至 api.access_control_allow_origins

auth_backend (已弃用)

自 2.3.0 版本起已弃用:该选项已移至 api.auth_backends

[cli]

api_client

cli 应该以何种方式访问 API。LocalClient 将直接使用数据库,而 json_client 将使用在 Web 服务器上运行的 api。

类型

字符串

默认值

airflow.api.client.local_client

环境变量

AIRFLOW__CLI__API_CLIENT

endpoint_url

如果您设置了 web_server_url_prefix,请不要忘记在此处附加它,例如:endpoint_url = https://127.0.0.1:8080/myroot,因此 api 将如下所示:https://127.0.0.1:8080/myroot/api/experimental/...

类型

字符串

默认值

https://127.0.0.1:8080

环境变量

AIRFLOW__CLI__ENDPOINT_URL

[core]

allowed_deserialization_classes

2.5.0 版本新增。

在反序列化期间可以导入哪些类。这是一个多行值。单个项将被解析为 glob 函数的模式。始终允许 Python 内置类(如 dict)。

类型

字符串

默认值

airflow.*

环境变量

AIRFLOW__CORE__ALLOWED_DESERIALIZATION_CLASSES

allowed_deserialization_classes_regexp

2.8.2 版本新增。

在反序列化期间可以导入哪些类。这是一个多行值。单个项将被解析为正则表达式模式。这是 [core] allowed_deserialization_classes 的辅助选项。

类型

字符串

默认值

''

环境变量

AIRFLOW__CORE__ALLOWED_DESERIALIZATION_CLASSES_REGEXP

auth_manager

2.7.0 版本新增。

Airflow 应使用的身份验证管理器类。身份验证管理器类的完整导入路径。

类型

字符串

默认值

airflow.providers.fab.auth_manager.fab_auth_manager.FabAuthManager

环境变量

AIRFLOW__CORE__AUTH_MANAGER

check_slas

1.10.8 版本新增。

在每个 dagrun 上检查定义的 SLA。

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__CHECK_SLAS

compress_serialized_dags

2.3.0 版本新增。

如果 True,则在写入数据库之前压缩序列化的 DAG。

注意

这将禁用 DAG 依赖关系视图。

类型

字符串

默认值

False

环境变量

AIRFLOW__CORE__COMPRESS_SERIALIZED_DAGS

daemon_umask

2.3.4 版本新增。

在守护程序模式(调度程序、工作程序等)下运行时,进程使用的默认 umask。

这控制文件创建模式掩码,该掩码确定新创建文件的文件权限位的初始值。

此值被视为八进制整数。

类型

字符串

默认值

0o077

环境变量

AIRFLOW__CORE__DAEMON_UMASK

dag_discovery_safe_mode

1.10.3 版本新增。

如果启用,Airflow 将仅扫描同时包含 DAGairflow(不区分大小写)的文件。

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__DAG_DISCOVERY_SAFE_MODE

dag_file_processor_timeout

1.10.6 版本新增。

在 DagFileProcessor(处理 dag 文件)超时之前的时间长度。

类型

字符串

默认值

50

环境变量

AIRFLOW__CORE__DAG_FILE_PROCESSOR_TIMEOUT

dag_ignore_file_syntax

2.3.0 版本新增。

.airflowignore 文件中使用的模式语法。有效值为 regexpglob

类型

字符串

默认值

regexp

环境变量

AIRFLOW__CORE__DAG_IGNORE_FILE_SYNTAX

dag_run_conf_overrides_params

是否使用 dag_run.conf 覆盖参数。如果您通过 airflow dags backfill -cairflow dags trigger -c 传递一些键值对,则键值对将覆盖参数中现有的键值对。

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__DAG_RUN_CONF_OVERRIDES_PARAMS

dagbag_import_error_traceback_depth

2.0.0 版本新增。

如果显示回溯,则应显示回溯中的多少个条目。

类型

整数

默认值

2

环境变量

AIRFLOW__CORE__DAGBAG_IMPORT_ERROR_TRACEBACK_DEPTH

dagbag_import_error_tracebacks

2.0.0 版本新增。

是否应在 UI 中显示 dagbag 导入错误的回溯,而不是仅显示异常消息。

类型

布尔值

默认值

True

环境变量

AIRFLOW__CORE__DAGBAG_IMPORT_ERROR_TRACEBACKS

dagbag_import_timeout

在 Python 文件导入超时之前的时间长度。

类型

浮点数

默认值

30.0

环境变量

AIRFLOW__CORE__DAGBAG_IMPORT_TIMEOUT

dags_are_paused_at_creation

DAG 是否在创建时默认暂停。

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__DAGS_ARE_PAUSED_AT_CREATION

dags_folder

您的 Airflow 管道所在的文件夹,很可能是代码存储库中的子文件夹。此路径必须是绝对路径。

类型

字符串

默认值

{AIRFLOW_HOME}/dags

环境变量

AIRFLOW__CORE__DAGS_FOLDER

database_access_isolation

2.6.0 版本新增。

(实验性)组件是否应该使用 Airflow 内部 API 进行数据库连接。

类型

布尔值

默认值

False

环境变量

AIRFLOW__CORE__DATABASE_ACCESS_ISOLATION

dataset_manager_class

2.4.0 版本新增。

用作数据集管理器的类。

类型

字符串

默认值

None

环境变量

AIRFLOW__CORE__DATASET_MANAGER_CLASS

示例

airflow.datasets.manager.DatasetManager

dataset_manager_kwargs

2.4.0 版本新增。

提供给数据集管理器的 Kwargs。

类型

字符串

默认值

None

环境变量

AIRFLOW__CORE__DATASET_MANAGER_KWARGS

AIRFLOW__CORE__DATASET_MANAGER_KWARGS_CMD

AIRFLOW__CORE__DATASET_MANAGER_KWARGS_SECRET

示例

{"some_param": "some_value"}

default_impersonation

如果设置此项,则没有 run_as_user 参数的任务将以该用户身份运行。可用于在执行任务时降级运行 Airflow 的 sudo 用户权限。

类型

字符串

默认值

''

环境变量

AIRFLOW__CORE__DEFAULT_IMPERSONATION

default_pool_task_slot_count

2.2.0 版本新增。

default_pool 的任务槽计数。此设置在已创建 default_pool 的现有部署中无效。对于现有部署,用户可以使用 Web 服务器、API 或 CLI 更改槽的数量。

类型

字符串

默认值

128

环境变量

AIRFLOW__CORE__DEFAULT_POOL_TASK_SLOT_COUNT

default_task_execution_timeout

2.3.0 版本新增。

运算符的默认 task execution_timeout 值。期望将一个整数值作为秒数传递到 timedelta 中。如果未指定,则该值被视为 None,这意味着默认情况下运算符永远不会超时。

类型

整数

默认值

''

环境变量

AIRFLOW__CORE__DEFAULT_TASK_EXECUTION_TIMEOUT

default_task_retries

1.10.6 版本新增。

默认情况下,每个任务将要重试的次数。可以在 DAG 或任务级别覆盖此值。

类型

字符串

默认值

0

环境变量

AIRFLOW__CORE__DEFAULT_TASK_RETRIES

default_task_retry_delay

2.4.0 版本新增。

默认情况下,每个任务在重试之间将等待的秒数。可以在 DAG 或任务级别覆盖此值。

类型

整数

默认值

300

环境变量

AIRFLOW__CORE__DEFAULT_TASK_RETRY_DELAY

default_task_weight_rule

2.2.0 版本新增。

用于任务有效总优先级权重的权重方法

类型

字符串

默认值

下游

环境变量

AIRFLOW__CORE__DEFAULT_TASK_WEIGHT_RULE

default_timezone

如果提供的日期时间是朴素的,则默认时区可以是 UTC (默认), system,或任何 IANA <https://www.iana.org/time-zones> 时区字符串 (例如 Europe/Amsterdam)

类型

字符串

默认值

utc

环境变量

AIRFLOW__CORE__DEFAULT_TIMEZONE

donot_pickle

是否禁用 DAG 的 pickle 操作

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__DONOT_PICKLE

enable_xcom_pickling

是否启用 xcom 的 pickle 操作(请注意,这是不安全的,并且允许 RCE 漏洞利用)。

类型

字符串

默认值

False

环境变量

AIRFLOW__CORE__ENABLE_XCOM_PICKLING

execute_tasks_new_python_interpreter

2.0.0 版本新增。

是否应通过派生父进程来执行任务

  • False: 通过派生父进程执行

  • True: 生成一个新的 python 进程,比派生慢,但意味着插件更改会立即被任务拾取

类型

布尔值

默认值

False

环境变量

AIRFLOW__CORE__EXECUTE_TASKS_NEW_PYTHON_INTERPRETER

executor

Airflow 应使用的执行器类。选项包括 SequentialExecutorLocalExecutorCeleryExecutorKubernetesExecutorCeleryKubernetesExecutorLocalKubernetesExecutor 或使用自定义执行器时类的完整导入路径。

类型

字符串

默认值

SequentialExecutor

环境变量

AIRFLOW__CORE__EXECUTOR

fernet_key

用于在数据库中保存连接密码的密钥

类型

字符串

默认值

{FERNET_KEY}

环境变量

AIRFLOW__CORE__FERNET_KEY

AIRFLOW__CORE__FERNET_KEY_CMD

AIRFLOW__CORE__FERNET_KEY_SECRET

hide_sensitive_var_conn_fields

2.1.0 版本新增。

设置为 True 时,从 UI 和任务日志中隐藏敏感的 变量连接额外 json 键

注意

连接密码始终在日志中隐藏

类型

布尔值

默认值

True

环境变量

AIRFLOW__CORE__HIDE_SENSITIVE_VAR_CONN_FIELDS

hostname_callable

通过提供可调用对象的路径来解析主机名。格式为“package.function”。

例如,默认值 airflow.utils.net.getfqdn 表示来自 socket.getfqdn() 修补版本的结果,请参阅相关的 CPython Issue

指定函数中不应需要任何参数。如果首选使用 IP 地址作为主机名,则使用值 airflow.utils.net.get_host_ip_address

类型

字符串

默认值

airflow.utils.net.getfqdn

环境变量

AIRFLOW__CORE__HOSTNAME_CALLABLE

internal_api_secret_key

2.10.0 版本中的新增功能。

用于向核心验证内部 API 客户端身份的密钥。它应该尽可能随机。但是,当运行多个 Web 服务器/内部 API 服务实例时,请确保所有实例都使用相同的 secret_key,否则调用将无法通过身份验证。使用密钥生成的身份验证令牌的过期时间很短 - 请确保运行 Airflow 组件的所有计算机上的时间都同步(例如,使用 ntpd),否则当访问日志时可能会收到“禁止”错误。

类型

字符串

默认值

{SECRET_KEY}

环境变量

AIRFLOW__CORE__INTERNAL_API_SECRET_KEY

AIRFLOW__CORE__INTERNAL_API_SECRET_KEY_CMD

AIRFLOW__CORE__INTERNAL_API_SECRET_KEY_SECRET

internal_api_url

2.6.0 版本新增。

(实验性) Airflow 内部 API URL。仅当 [core] database_access_isolationTrue 时才使用。

类型

字符串

默认值

None

环境变量

AIRFLOW__CORE__INTERNAL_API_URL

示例

https://127.0.0.1:8080

killed_task_cleanup_time

当任务被强制终止时,这是在发送 SIGTERM 后必须清理的时间(以秒为单位),然后才会发送 SIGKILL。

类型

字符串

默认值

60

环境变量

AIRFLOW__CORE__KILLED_TASK_CLEANUP_TIME

lazy_discover_providers

2.0.0 版本新增。

默认情况下,Airflow 提供程序是延迟发现的(仅在需要时才会发现和导入)。如果希望在通过 cli 调用“airflow”或从模块加载时发现提供程序,请将其设置为 False

类型

布尔值

默认值

True

环境变量

AIRFLOW__CORE__LAZY_DISCOVER_PROVIDERS

lazy_load_plugins

2.0.0 版本新增。

默认情况下,Airflow 插件是延迟加载的(仅在需要时才会加载)。如果希望在通过 cli 调用“airflow”或从模块加载时加载插件,请将其设置为 False

类型

布尔值

默认值

True

环境变量

AIRFLOW__CORE__LAZY_LOAD_PLUGINS

load_examples

是否加载 Airflow 附带的 DAG 示例。这对于入门很有好处,但您可能希望在生产环境中将其设置为 False

类型

字符串

默认值

True

环境变量

AIRFLOW__CORE__LOAD_EXAMPLES

max_active_runs_per_dag

每个 DAG 的最大活动 DAG 运行次数。如果达到限制,调度程序将不再创建更多 DAG 运行。这可以在 DAG 级别使用 max_active_runs 进行配置,默认为 [core] max_active_runs_per_dag

类型

字符串

默认值

16

环境变量

AIRFLOW__CORE__MAX_ACTIVE_RUNS_PER_DAG

max_active_tasks_per_dag

2.2.0 版本新增。

每个 DAG 中允许同时运行的最大任务实例数。要计算 DAG 同时运行的任务数,请将 DAG 的所有 DAG 运行的运行任务数相加。这可以在 DAG 级别使用 max_active_tasks 进行配置,默认为 [core] max_active_tasks_per_dag

当您想阻止具有较早开始时间的新 DAG 占用集群中的所有执行器插槽时,这种情况会很有用。

类型

字符串

默认值

16

环境变量

AIRFLOW__CORE__MAX_ACTIVE_TASKS_PER_DAG

max_consecutive_failed_dag_runs_per_dag

2.9.0 版本中的新增功能。

(实验性) 在 DAG 自动暂停之前的最大连续 DAG 失败次数。这也可以在 DAG 级别使用 max_consecutive_failed_dag_runs 进行配置,默认为 [core] max_consecutive_failed_dag_runs_per_dag。如果未指定,则该值被视为 0,这意味着默认情况下 DAG 永远不会暂停。

类型

字符串

默认值

0

环境变量

AIRFLOW__CORE__MAX_CONSECUTIVE_FAILED_DAG_RUNS_PER_DAG

max_map_length

2.3.0 版本新增。

XCom 可以推送以触发任务映射的最大列表/字典长度。如果推送的列表/字典的长度超过此值,则推送 XCom 的任务将自动失败,以防止映射的任务阻塞调度程序。

类型

整数

默认值

1024

环境变量

AIRFLOW__CORE__MAX_MAP_LENGTH

max_num_rendered_ti_fields_per_task

1.10.10 版本中的新增功能。

每个任务要存储在数据库中的最大渲染任务实例字段(模板字段)数。每个任务实例的所有 template_fields 都存储在数据库中。保持此数字较小可能会在您尝试查看旧任务的 TaskInstance 视图中的 Rendered 选项卡时导致错误。

类型

整数

默认值

30

环境变量

AIRFLOW__CORE__MAX_NUM_RENDERED_TI_FIELDS_PER_TASK

max_task_retry_delay

2.6.0 版本新增。

默认情况下,每个任务在重试之间将等待的最大延迟(以秒为单位)。这是一个全局设置,不能在任务或 DAG 级别覆盖。

类型

整数

默认值

86400

环境变量

AIRFLOW__CORE__MAX_TASK_RETRY_DELAY

max_templated_field_length

2.9.0 版本中的新增功能。

渲染模板字段的最大长度。如果存储在渲染模板字段中的值超过此大小,则会将其删除。

类型

整数

默认值

4096

环境变量

AIRFLOW__CORE__MAX_TEMPLATED_FIELD_LENGTH

might_contain_dag_callable

2.6.0 版本新增。

一个可调用对象,用于检查 Python 文件是否定义了 Airflow DAG,如果定义了 DAG,则应返回 True,否则返回 False。如果未提供此对象,Airflow 将使用其自身的启发式规则。

该函数应具有以下签名:

def func_name(file_path: str, zip_file: zipfile.ZipFile | None = None) -> bool: ...
类型

字符串

默认值

airflow.utils.file.might_contain_dag_via_default_heuristic

环境变量

AIRFLOW__CORE__MIGHT_CONTAIN_DAG_CALLABLE

min_serialized_dag_fetch_interval

1.10.12 版本新增。

获取序列化的 DAG 的速度不能快于最小间隔,以降低数据库读取速率。此配置控制 Web 服务器中 DAG 的更新时间。

类型

字符串

默认值

10

环境变量

AIRFLOW__CORE__MIN_SERIALIZED_DAG_FETCH_INTERVAL

min_serialized_dag_update_interval

1.10.7 版本新增。

更新序列化的 DAG 的速度不能快于最小间隔,以降低数据库写入速率。

类型

字符串

默认值

30

环境变量

AIRFLOW__CORE__MIN_SERIALIZED_DAG_UPDATE_INTERVAL

mp_start_method

2.0.0 版本新增。

用于通过多进程模块启动 Python 进程的方法名称。 这与 Python 文档中的可用选项直接对应:multiprocessing.set_start_method 必须是 multiprocessing.get_all_start_methods() 返回的值之一。

类型

字符串

默认值

None

环境变量

AIRFLOW__CORE__MP_START_METHOD

示例

fork

parallelism

此配置定义了在 Airflow 中每个调度器可以同时运行的最大任务实例数,而与工作节点的数量无关。通常,此值乘以集群中调度器的数量,就是元数据数据库中处于运行状态的最大任务实例数。 将此值设置为零将允许无限的并行性。

类型

字符串

默认值

32

环境变量

AIRFLOW__CORE__PARALLELISM

plugins_folder

包含 Airflow 插件的文件夹的路径

类型

字符串

默认值

{AIRFLOW_HOME}/plugins

环境变量

AIRFLOW__CORE__PLUGINS_FOLDER

security

要使用的安全模块(例如 kerberos)

类型

字符串

默认值

''

环境变量

AIRFLOW__CORE__SECURITY

sensitive_var_conn_names

2.1.0 版本新增。

一个以逗号分隔的额外敏感关键字列表,用于在变量名称或连接的额外 JSON 中查找。

类型

字符串

默认值

''

环境变量

AIRFLOW__CORE__SENSITIVE_VAR_CONN_NAMES

strict_dataset_uri_validation

2.9.2 版本新增。

如果数据集 URI 不符合 AIP-60,则数据集 URI 验证应引发异常。默认情况下,此配置为 false,这意味着 Airflow 2.x 仅警告用户。 在 Airflow 3 中,将删除此配置,无条件启用严格验证。

类型

布尔值

默认值

False

环境变量

AIRFLOW__CORE__STRICT_DATASET_URI_VALIDATION

task_runner

用于在子进程中运行任务实例的类。选项包括 StandardTaskRunner、CgroupTaskRunner 或使用自定义任务运行器时的类的完整导入路径。

类型

字符串

默认值

StandardTaskRunner

环境变量

AIRFLOW__CORE__TASK_RUNNER

task_success_overtime

2.10.0 版本中的新增功能。

任务标记为成功后,任务执行辅助进程(如监听器、迷你调度器等)的最大可能时间(以秒为单位)。

类型

整数

默认值

20

环境变量

AIRFLOW__CORE__TASK_SUCCESS_OVERTIME

test_connection

2.7.0 版本新增。

允许在 Airflow UI、API 和 CLI 中测试连接的功能。 支持的选项:DisabledEnabledHidden。 默认值:Disabled Disabled - 禁用连接测试功能,并禁用 UI 中的“测试连接”按钮。 Enabled - 启用连接测试功能,并在 UI 中显示“测试连接”按钮。 Hidden - 禁用连接测试功能,并隐藏 UI 中的“测试连接”按钮。 在将此设置为 Enabled 之前,请确保您检查能够添加/编辑连接的用户,并确保他们是受信任的。 连接测试可能会被恶意执行,从而导致不希望的和不安全的结果。有关更多详细信息,请参阅 Airflow 安全模型:已认证 UI 用户的功能

类型

字符串

默认值

Disabled

环境变量

AIRFLOW__CORE__TEST_CONNECTION

unit_test_mode

启用单元测试模式(在运行时用测试值覆盖许多配置选项)

类型

字符串

默认值

False

环境变量

AIRFLOW__CORE__UNIT_TEST_MODE

xcom_backend

1.10.12 版本新增。

用于存储和解析操作员结果的自定义 XCom 类的路径

类型

字符串

默认值

airflow.models.xcom.BaseXCom

环境变量

AIRFLOW__CORE__XCOM_BACKEND

示例

path.to.CustomXCom

base_log_folder (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.base_log_folder

colored_console_log (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.colored_console_log

colored_formatter_class (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.colored_formatter_class

colored_log_format (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.colored_log_format

dag_concurrency (已弃用)

自 2.2.0 版本起已弃用:该选项已移至 core.max_active_tasks_per_dag

dag_processor_manager_log_location (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.dag_processor_manager_log_location

encrypt_s3_logs (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.encrypt_s3_logs

fab_logging_level (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.fab_logging_level

interleave_timestamp_parser (已弃用)

自 2.6.1 版本起已弃用:该选项已移至 logging.interleave_timestamp_parser

load_default_connections (已弃用)

自 2.3.0 版本起已弃用:该选项已移至 database.load_default_connections

log_filename_template (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.log_filename_template

log_format (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.log_format

log_processor_filename_template (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.log_processor_filename_template

logging_config_class (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.logging_config_class

logging_level (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.logging_level

max_db_retries (已弃用)

自 2.3.0 版本起已弃用:该选项已移至 database.max_db_retries

non_pooled_task_slot_count (已弃用)

自 1.10.4 版本起已弃用:该选项已移至 core.default_pool_task_slot_count

remote_base_log_folder (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.remote_base_log_folder

remote_log_conn_id (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.remote_log_conn_id

remote_logging (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.remote_logging

simple_log_format (已弃用)

自 2.0.0 版本起已弃用:该选项已移至 logging.simple_log_format

sql_alchemy_conn (已弃用)

自 2.3.0 版本起已弃用:该选项已移至 database.sql_alchemy_conn

sql_alchemy_connect_args (已弃用)

自 2.3.0 版本起已弃用:该选项已移至 database.sql_alchemy_connect_args

sql_alchemy_max_overflow (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_max_overflow

sql_alchemy_pool_enabled (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_pool_enabled

sql_alchemy_pool_pre_ping (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_pool_pre_ping

sql_alchemy_pool_recycle (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_pool_recycle

sql_alchemy_pool_size (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_pool_size

sql_alchemy_schema (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_alchemy_schema

sql_engine_collation_for_ids (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_engine_collation_for_ids

sql_engine_encoding (已弃用)

自 2.3.0 版本起已弃用:此选项已移至 database.sql_engine_encoding

task_log_prefix_template (已弃用)

自 2.0.0 版本起已弃用:此选项已移至 logging.task_log_prefix_template

task_log_reader (已弃用)

自 2.0.0 版本起已弃用:此选项已移至 logging.task_log_reader

worker_precheck (已弃用)

自 2.0.0 版本起已弃用:此选项已移至 celery.worker_precheck

[database]

alembic_ini_file_path

2.7.0 版本新增。

alembic.ini 文件的路径。您可以提供相对于 Airflow 主目录的文件路径,或者如果该文件位于其他位置,则提供绝对路径。

类型

字符串

默认值

alembic.ini

环境变量

AIRFLOW__DATABASE__ALEMBIC_INI_FILE_PATH

check_migrations

2.6.0 版本新增。

是否在 Airflow 启动期间运行 alembic 迁移。有时此操作可能开销很大,用户可以通过其他方式(例如,通过 Helm 图表)断言正确的版本。接受 TrueFalse

类型

字符串

默认值

True

环境变量

AIRFLOW__DATABASE__CHECK_MIGRATIONS

load_default_connections

2.3.0 版本新增。

在调用 airflow db init 时是否加载 Airflow 附带的默认连接。刚开始使用时很好,但在生产环境中您可能希望将其设置为 False

自 2.7.0 版本起已弃用:此选项仅由已弃用的“airflow db init”命令使用。此选项在以前版本的 Airflow 中用于确定是否使用 airflow db init 命令加载默认连接。此命令已弃用,并由两个单独的命令 airflow db migrateairflow connections create-default-connections 替换,并且这些命令不再使用 load_default_connections

类型

字符串

默认值

True

环境变量

AIRFLOW__DATABASE__LOAD_DEFAULT_CONNECTIONS

max_db_retries

2.3.0 版本新增。

在发生 DB 操作错误时,代码应重试的次数。并非所有事务都会重试,因为它可能导致不期望的状态。目前,它仅在 DagFileProcessor.process_file 中用于重试 dagbag.sync_to_db

类型

整数

默认值

3

环境变量

AIRFLOW__DATABASE__MAX_DB_RETRIES

sql_alchemy_conn

2.3.0 版本新增。

到元数据数据库的 SQLAlchemy 连接字符串。SQLAlchemy 支持许多不同的数据库引擎。有关更多详细信息,请参阅:设置数据库后端:数据库 URI

类型

字符串

默认值

sqlite:///{AIRFLOW_HOME}/airflow.db

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_CONN

AIRFLOW__DATABASE__SQL_ALCHEMY_CONN_CMD

AIRFLOW__DATABASE__SQL_ALCHEMY_CONN_SECRET

sql_alchemy_connect_args

2.3.0 版本新增。

SQLAlchemy 中连接参数的导入路径。默认为空字典。当您想要配置 SQLAlchemy 在连接字符串中不会解析的 db 引擎参数时,这非常有用。可以通过传递包含创建引擎参数的字典来设置此值。有关在 Postgres DB 后端中传递创建引擎参数(keepalives 变量、超时等)的更多详细信息,请参阅 设置 PostgreSQL 数据库,例如 connect_args={"timeout":30} 可以在 airflow_local_settings.py 中定义,并且可以按如下所示导入

类型

字符串

默认值

None

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_CONNECT_ARGS

示例

airflow_local_settings.connect_args

sql_alchemy_engine_args

2.3.0 版本新增。

传递给 SQLAlchemy 的 create_engine 的额外引擎特定关键字参数,作为 JSON 编码的值

类型

字符串

默认值

None

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGS

AIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGS_CMD

AIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGS_SECRET

示例

{"arg1": true}

sql_alchemy_max_overflow

2.3.0 版本新增。

池的最大溢出大小。当已检出的连接数达到 pool_size 中设置的大小后,将返回其他连接,直到此限制。当这些额外的连接返回到池时,它们将断开连接并丢弃。因此,池将允许的同时连接总数为 pool_size + max_overflow,池将允许的“休眠”连接总数为 pool_size。可以将 max_overflow 设置为 -1 以表示无溢出限制;不会对并发连接的总数施加限制。默认为 10

类型

字符串

默认值

10

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_MAX_OVERFLOW

sql_alchemy_pool_enabled

2.3.0 版本新增。

SQLAlchemy 是否应池化数据库连接。

类型

字符串

默认值

True

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_ENABLED

sql_alchemy_pool_pre_ping

2.3.0 版本新增。

在每次连接池检出开始时检查连接。通常,这是一个简单的语句,例如“SELECT 1”。有关更多详细信息,请参阅 SQLAlchemy 池化:断开连接处理 - 悲观

类型

字符串

默认值

True

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_PRE_PING

sql_alchemy_pool_recycle

2.3.0 版本新增。

SQLAlchemy 池回收是连接在池中空闲多长时间(以秒为单位)后失效的时间。此配置不适用于 sqlite。如果数据库连接数超过,则较低的配置值将允许系统更快地恢复。

类型

字符串

默认值

1800

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_RECYCLE

sql_alchemy_pool_size

2.3.0 版本新增。

SQLAlchemy 池大小是池中数据库连接的最大数目。0 表示没有限制。

类型

字符串

默认值

5

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_SIZE

sql_alchemy_schema

2.3.0 版本新增。

用于元数据数据库的架构。SQLAlchemy 支持具有多个架构概念的数据库。

类型

字符串

默认值

''

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_SCHEMA

sql_alchemy_session_maker

2.9.4 版本中的新增功能。

重要警告:强烈不建议使用 sql_alchemy_session_maker 返回“sqlalchemy.orm.sessionmaker”的函数的导入路径。sql_alchemy_session_maker 的配置不当可能会导致严重问题,包括数据损坏、不可恢复的应用程序崩溃。请查看 SQLAlchemy 文档,详细了解正确的配置和最佳实践。

类型

字符串

默认值

None

环境变量

AIRFLOW__DATABASE__SQL_ALCHEMY_SESSION_MAKER

示例

airflow_local_settings._sessionmaker

sql_engine_collation_for_ids

2.3.0 版本新增。

用于 dag_idtask_idkeyexternal_executor_id 列的排序规则,以防它们具有不同的编码。默认情况下,此排序规则与数据库排序规则相同,但是对于 mysqlmariadb,默认值为 utf8mb3_bin,以便当排序规则设置为 utf8mb4 变体时,我们的索引键的索引大小不会超过允许的最大索引大小,有关更多详细信息,请参阅 GitHub 问题评论

类型

字符串

默认值

None

环境变量

AIRFLOW__DATABASE__SQL_ENGINE_COLLATION_FOR_IDS

sql_engine_encoding

2.3.0 版本新增。

数据库的编码

类型

字符串

默认值

utf-8

环境变量

AIRFLOW__DATABASE__SQL_ENGINE_ENCODING

[debug]

fail_fast

1.10.8 版本新增。

仅与 DebugExecutor 一起使用。如果设置为 True,则 DAG 将在第一个失败的任务时失败。有助于调试。

类型

字符串

默认值

False

环境变量

AIRFLOW__DEBUG__FAIL_FAST

[email]

配置电子邮件后端以及是否在重试或失败时发送电子邮件警报

default_email_on_failure

2.0.0 版本新增。

当任务失败时是否应发送电子邮件警报

类型

布尔值

默认值

True

环境变量

AIRFLOW__EMAIL__DEFAULT_EMAIL_ON_FAILURE

default_email_on_retry

2.0.0 版本新增。

当任务重试时是否应发送电子邮件警报

类型

布尔值

默认值

True

环境变量

AIRFLOW__EMAIL__DEFAULT_EMAIL_ON_RETRY

email_backend

要使用的电子邮件后端

类型

字符串

默认值

airflow.utils.email.send_email_smtp

环境变量

AIRFLOW__EMAIL__EMAIL_BACKEND

email_conn_id

2.1.0 版本新增。

要使用的电子邮件连接 ID。

类型

字符串

默认值

smtp_default

环境变量

AIRFLOW__EMAIL__EMAIL_CONN_ID

from_email

2.2.4 版本新增。

将用作发件人地址的电子邮件地址。它可以是原始电子邮件,也可以是完整地址,格式为 发件人姓名 <[email protected]>

类型

字符串

默认值

None

环境变量

AIRFLOW__EMAIL__FROM_EMAIL

示例

Airflow <[email protected]>

html_content_template

2.0.1 版本新增。

将用作电子邮件内容模板的文件(将使用 Jinja2 进行渲染)。如果未设置,Airflow 将使用基本模板。

另请参阅

电子邮件配置

类型

字符串

默认值

None

环境变量

AIRFLOW__EMAIL__HTML_CONTENT_TEMPLATE

示例

/path/to/my_html_content_template_file

ssl_context

2.7.0 版本新增。

使用 SMTP 和 IMAP SSL 连接时要使用的 SSL 上下文。默认情况下,上下文为“default”,将其设置为 ssl.create_default_context(),它在兼容性和安全性之间提供了适当的平衡,但是它要求您操作系统中的证书已更新,并且您的 SMTP/IMAP 服务器具有有效的证书,这些证书的相应公钥已安装在您的机器上。如果您想禁用证书检查,可以将其切换为“none”,但不建议这样做,因为它允许在您的基础设施安全性不足的情况下进行 MITM(中间人)攻击。它应该仅在您修复证书配置时临时设置。这通常可以通过升级您运行 Airflow 组件的操作系统的新版本、在操作系统中升级/刷新正确的证书或更新您的邮件服务器的证书来完成。

类型

字符串

默认值

default

环境变量

AIRFLOW__EMAIL__SSL_CONTEXT

示例

default

subject_template

2.0.1 版本新增。

将用作电子邮件主题模板的文件(将使用 Jinja2 进行渲染)。如果未设置,Airflow 将使用基本模板。

另请参阅

电子邮件配置

类型

字符串

默认值

None

环境变量

AIRFLOW__EMAIL__SUBJECT_TEMPLATE

示例

/path/to/my_subject_template_file

[kerberos]

ccache

执行 kinit 后 ccache 文件的位置。

类型

字符串

默认值

/tmp/airflow_krb5_ccache

环境变量

AIRFLOW__KERBEROS__CCACHE

forwardable

2.2.0 版本新增。

允许禁用票证转发功能。

类型

布尔值

默认值

True

环境变量

AIRFLOW__KERBEROS__FORWARDABLE

include_ip

2.2.0 版本新增。

允许从令牌中删除源 IP,当在 NAT 后的 Docker 主机后面使用令牌时很有用。

类型

布尔值

默认值

True

环境变量

AIRFLOW__KERBEROS__INCLUDE_IP

keytab

指定 Airflow 用户的 Kerberos keytab 文件的路径

类型

字符串

默认值

airflow.keytab

环境变量

AIRFLOW__KERBEROS__KEYTAB

kinit_path

kinit 可执行文件的路径

类型

字符串

默认值

kinit

环境变量

AIRFLOW__KERBEROS__KINIT_PATH

principal

使用 fqdn 进行扩充

类型

字符串

默认值

airflow

环境变量

AIRFLOW__KERBEROS__PRINCIPAL

reinit_frequency

确定初始化或重新初始化过程发生的频率。

类型

字符串

默认值

3600

环境变量

AIRFLOW__KERBEROS__REINIT_FREQUENCY

[lineage]

backend

要使用的 lineage 后端

类型

字符串

默认值

''

环境变量

AIRFLOW__LINEAGE__BACKEND

[logging]

base_log_folder

2.0.0 版本新增。

Airflow 应该存储其日志文件的文件夹。此路径必须是绝对路径。有一些现有的配置假设此值设置为默认值。如果您选择覆盖此值,您可能还需要更新 [logging] dag_processor_manager_log_location[logging] child_process_log_directory 设置

类型

字符串

默认值

{AIRFLOW_HOME}/logs

环境变量

AIRFLOW__LOGGING__BASE_LOG_FOLDER

celery_logging_level

2.3.0 版本新增。

celery 的日志级别。如果未设置,则使用 logging_level 的值

支持的值:CRITICALERRORWARNINGINFODEBUG

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__CELERY_LOGGING_LEVEL

celery_stdout_stderr_separation

2.7.0 版本新增。

默认情况下,Celery 将所有日志发送到 stderr。如果启用,将*删除*任何先前的日志处理程序。使用此选项,Airflow 将创建新的处理程序,并将 INFO 和 WARNING 等低级别日志发送到 stdout,同时将更高级别的严重性日志发送到 stderr。

类型

布尔值

默认值

False

环境变量

AIRFLOW__LOGGING__CELERY_STDOUT_STDERR_SEPARATION

color_log_error_keywords

2.10.0 版本中的新增功能。

一个以逗号分隔的与错误相关的关键字列表,这些关键字的存在应该在 UI 中以红色显示该行

类型

字符串

默认值

error,exception

环境变量

AIRFLOW__LOGGING__COLOR_LOG_ERROR_KEYWORDS

color_log_warning_keywords

2.10.0 版本中的新增功能。

一个以逗号分隔的与警告相关的关键字列表,这些关键字的存在应该在 UI 中以黄色显示该行

类型

字符串

默认值

warn

环境变量

AIRFLOW__LOGGING__COLOR_LOG_WARNING_KEYWORDS

colored_console_log

2.0.0 版本新增。

用于在控制终端为 TTY 时启用/禁用控制台中彩色日志的标志。

类型

字符串

默认值

True

环境变量

AIRFLOW__LOGGING__COLORED_CONSOLE_LOG

colored_formatter_class

2.0.0 版本新增。

指定 Airflow 用于实现彩色日志记录的类

类型

字符串

默认值

airflow.utils.log.colored_log.CustomTTYColoredFormatter

环境变量

AIRFLOW__LOGGING__COLORED_FORMATTER_CLASS

colored_log_format

2.0.0 版本新增。

启用彩色日志时的日志格式

类型

字符串

默认值

[%%(blue)s%%(asctime)s%%(reset)s] {%%(blue)s%%(filename)s:%%(reset)s%%(lineno)d} %%(log_color)s%%(levelname)s%%(reset)s - %%(log_color)s%%(message)s%%(reset)s

环境变量

AIRFLOW__LOGGING__COLORED_LOG_FORMAT

dag_processor_log_format

2.4.0 版本新增。

Dag 处理器日志行的格式

类型

字符串

默认值

[%%(asctime)s] [SOURCE:DAG_PROCESSOR] {%%(filename)s:%%(lineno)d} %%(levelname)s - %%(message)s

环境变量

AIRFLOW__LOGGING__DAG_PROCESSOR_LOG_FORMAT

dag_processor_log_target

2.4.0 版本新增。

将 dag 解析器日志发送到何处。如果为“file”,则日志将发送到由 child_process_log_directory 定义的日志文件。

类型

字符串

默认值

file

环境变量

AIRFLOW__LOGGING__DAG_PROCESSOR_LOG_TARGET

dag_processor_manager_log_location

2.0.0 版本新增。

dag_processor_manager 日志文件的完整路径。

类型

字符串

默认值

{AIRFLOW_HOME}/logs/dag_processor_manager/dag_processor_manager.log

环境变量

AIRFLOW__LOGGING__DAG_PROCESSOR_MANAGER_LOG_LOCATION

dag_processor_manager_log_stdout

2.9.0 版本中的新增功能。

DAG 处理器管理器是否将日志写入 stdout

类型

布尔值

默认值

False

环境变量

AIRFLOW__LOGGING__DAG_PROCESSOR_MANAGER_LOG_STDOUT

delete_local_logs

2.6.0 版本新增。

是否应在将 GCS、S3、WASB 和 OSS 远程日志记录的本地日志文件上传到远程位置后将其删除。

类型

字符串

默认值

False

环境变量

AIRFLOW__LOGGING__DELETE_LOCAL_LOGS

enable_task_context_logger

2.8.0 版本新增。

如果启用,Airflow 可能会从任务运行上下文之外(例如,从调度程序、执行程序或回调执行上下文)向任务日志发送消息。这在某些情况下很有用,例如,当某些东西阻止任务执行时,通常可能根本没有任务日志。默认情况下,此值设置为 True。如果您遇到此功能的问题(例如,调度程序性能问题),可以禁用它。

类型

布尔值

默认值

True

环境变量

AIRFLOW__LOGGING__ENABLE_TASK_CONTEXT_LOGGER

encrypt_s3_logs

2.0.0 版本新增。

对存储在 S3 中的日志使用服务器端加密

类型

字符串

默认值

False

环境变量

AIRFLOW__LOGGING__ENCRYPT_S3_LOGS

extra_logger_names

2.0.0 版本新增。

一个以逗号分隔的第三方记录器名称列表,这些名称将被配置为将消息打印到控制台。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__EXTRA_LOGGER_NAMES

示例

connexion,sqlalchemy

fab_logging_level

2.0.0 版本新增。

Flask-appbuilder UI 的日志级别。

支持的值:CRITICALERRORWARNINGINFODEBUG

类型

字符串

默认值

WARNING

环境变量

AIRFLOW__LOGGING__FAB_LOGGING_LEVEL

file_task_handler_new_file_permissions

2.6.0 版本新增。

权限的形式为 chmod 理解的八进制字符串。当您使用模拟时,当日志由与 airflow 不同的用户写入时,权限很重要。在这种情况下,配置它的最安全的方法是将两个用户添加到同一个组,并使其成为两个用户的默认组。组可写的日志在 airflow 中是默认的,但您可能会决定接受日志其他用户可写,在这种情况下,您应该将其设置为 0o666。如果您不使用模拟,您可以决定添加更多安全性并将其更改为 0o644,使其仅可由所有者写入。如果所有对日志的访问(读取/写入)都来自同一用户,您也可以通过将其更改为 0o600 使其仅对所有者可读。

类型

字符串

默认值

0o664

环境变量

AIRFLOW__LOGGING__FILE_TASK_HANDLER_NEW_FILE_PERMISSIONS

示例

0o664

file_task_handler_new_folder_permissions

2.6.0 版本新增。

权限采用八进制字符串形式,与 chmod 命令的理解方式相同。当您使用模拟时,权限非常重要,此时日志由与 Airflow 不同的用户写入。在这种情况下,最安全的配置方式是将两个用户添加到同一个组,并使其成为两个用户的默认组。在 Airflow 中,组可写日志是默认设置,但您可能认为允许日志其他用户可写是可以接受的,在这种情况下,您应将其设置为 0o777。如果您不使用模拟,并且希望增加安全性,则可以将其更改为 0o755,使其仅所有者可写。如果您的所有日志访问(读取/写入)都来自同一用户,您也可以将其更改为 0o700,使其仅对所有者可读。

类型

字符串

默认值

0o775

环境变量

AIRFLOW__LOGGING__FILE_TASK_HANDLER_NEW_FOLDER_PERMISSIONS

示例

0o775

google_key_path

2.0.0 版本新增。

Google 凭据 JSON 文件的路径。如果省略,将使用基于应用程序默认凭据的授权。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__GOOGLE_KEY_PATH

interleave_timestamp_parser

2.6.0 版本新增。

我们必须解析时间戳才能交错触发器和任务之间的日志。为此,我们需要解析日志文件中的时间戳。如果您的日志格式是非标准的,您可以提供可调用对象的导入路径,该对象接收字符串日志行并返回时间戳(与 datetime.datetime 兼容)。

类型

字符串

默认值

None

环境变量

AIRFLOW__LOGGING__INTERLEAVE_TIMESTAMP_PARSER

示例

path.to.my_func

log_filename_template

2.0.0 版本新增。

用于 Airflow 如何为每个任务运行生成文件名/路径的格式。

类型

字符串

默认值

dag_id={ ti.dag_id }/run_id={ ti.run_id }/task_id={ ti.task_id }/{%% if ti.map_index >= 0 %%}map_index={ ti.map_index }/{%% endif %%}attempt={ try_number }.log

环境变量

AIRFLOW__LOGGING__LOG_FILENAME_TEMPLATE

log_format

2.0.0 版本新增。

日志行的格式

类型

字符串

默认值

[%%(asctime)s] {%%(filename)s:%%(lineno)d} %%(levelname)s - %%(message)s

环境变量

AIRFLOW__LOGGING__LOG_FORMAT

log_formatter_class

2.3.4 版本新增。

确定 Airflow 用于构建其日志消息的格式化程序类。默认的格式化程序类是时区感知的,这意味着附加到日志条目的时间戳将进行调整以反映 Airflow 实例的本地时区。

类型

字符串

默认值

airflow.utils.log.timezone_aware.TimezoneAware

环境变量

AIRFLOW__LOGGING__LOG_FORMATTER_CLASS

log_processor_filename_template

2.0.0 版本新增。

用于 Airflow 如何为日志生成文件名的格式。

类型

字符串

默认值

{ filename }.log

环境变量

AIRFLOW__LOGGING__LOG_PROCESSOR_FILENAME_TEMPLATE

logging_config_class

2.0.0 版本新增。

日志类。指定将指定日志配置的类。此类必须位于 Python 类路径上。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__LOGGING_CONFIG_CLASS

示例

my.path.default_local_settings.LOGGING_CONFIG

logging_level

2.0.0 版本新增。

日志级别。

支持的值:CRITICALERRORWARNINGINFODEBUG

类型

字符串

默认值

INFO

环境变量

AIRFLOW__LOGGING__LOGGING_LEVEL

remote_base_log_folder

2.0.0 版本新增。

用于远程日志记录的存储桶 URL。S3 存储桶应以 **s3://** 开头,Cloudwatch 日志组应以 **cloudwatch://** 开头,GCS 存储桶应以 **gs://** 开头,WASB 存储桶应以 **wasb** 开头,以帮助 Airflow 选择正确的处理程序。Stackdriver 日志应以 **stackdriver://** 开头。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__REMOTE_BASE_LOG_FOLDER

remote_log_conn_id

2.0.0 版本新增。

用户必须提供 Airflow 连接 ID,以提供对存储位置的访问权限。根据您的远程日志记录服务,这可能仅用于读取日志,而不能用于写入日志。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__REMOTE_LOG_CONN_ID

remote_logging

2.0.0 版本新增。

Airflow 可以将日志远程存储在 AWS S3、Google Cloud Storage 或 Elastic Search 中。如果您想启用远程日志记录,请将其设置为 True

类型

字符串

默认值

False

环境变量

AIRFLOW__LOGGING__REMOTE_LOGGING

remote_task_handler_kwargs

2.6.0 版本新增。

remote_task_handler_kwargs 参数加载到字典中,并传递给远程任务处理程序的 __init__,并且会覆盖 Airflow 配置提供的值。例如,如果您设置 delete_local_logs=False,并且提供 {"delete_local_copy": true},则本地日志文件将在上传到远程位置后被删除。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGS

AIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGS_CMD

AIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGS_SECRET

示例

{"delete_local_copy": true}

secret_mask_adapter

2.6.0 版本新增。

用于添加使用 airflow.utils.log.secrets_masker.mask_secret 添加的每个机密的适配,以便在日志消息中进行屏蔽的函数的导入路径。给定的函数应需要一个参数:要适配的机密。它可以返回机密的单个适配,也可以返回要屏蔽为机密的适配的迭代器。原始机密将与返回的任何适配一起被屏蔽。

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__SECRET_MASK_ADAPTER

示例

urllib.parse.quote

simple_log_format

2.0.0 版本新增。

定义简单日志配置的日志消息格式

类型

字符串

默认值

%%(asctime)s %%(levelname)s - %%(message)s

环境变量

AIRFLOW__LOGGING__SIMPLE_LOG_FORMAT

task_log_prefix_template

2.0.0 版本新增。

使用流处理程序 TaskHandlerWithCustomFormatter 指定如下所述的前缀模式

类型

字符串

默认值

''

环境变量

AIRFLOW__LOGGING__TASK_LOG_PREFIX_TEMPLATE

示例

{ti.dag_id}-{ti.task_id}-{execution_date}-{ti.try_number}

task_log_reader

2.0.0 版本新增。

读取任务实例日志的处理程序的名称。默认使用 task 处理程序。

类型

字符串

默认值

task

环境变量

AIRFLOW__LOGGING__TASK_LOG_READER

trigger_log_server_port

2.6.0 版本新增。

用于从触发器提供日志的端口。有关更多信息,请参见 [logging] worker_log_server_port 的说明。

类型

字符串

默认值

8794

环境变量

AIRFLOW__LOGGING__TRIGGER_LOG_SERVER_PORT

worker_log_server_port

2.2.0 版本新增。

当您启动 Airflow 工作器时,Airflow 会启动一个微型 Web 服务器子进程,以将工作器的本地日志文件提供给 Airflow 主 Web 服务器,然后由后者构建页面并将其发送给用户。这定义了日志提供服务的端口。它必须是未使用的,并且对于从主 Web 服务器连接到工作器是可见的。

类型

字符串

默认值

8793

环境变量

AIRFLOW__LOGGING__WORKER_LOG_SERVER_PORT

[metrics]

StatsD 集成设置。

metrics_allow_list

2.6.0 版本新增。

配置允许列表(逗号分隔的字符串),以便仅发送某些指标。如果 [metrics] metrics_use_pattern_matchfalse,则仅匹配精确的指标名称前缀。如果 [metrics] metrics_use_pattern_matchtrue,则提供用于匹配的正则表达式模式。

类型

字符串

默认值

''

环境变量

AIRFLOW__METRICS__METRICS_ALLOW_LIST

示例

"scheduler,executor,dagrun,pool,triggerer,celery" "^scheduler,^executor,heartbeat|timeout"

metrics_block_list

2.6.0 版本新增。

配置阻止列表(逗号分隔的字符串),以阻止发出某些指标。如果同时配置了 [metrics] metrics_allow_list[metrics] metrics_block_list,则将忽略 [metrics] metrics_block_list

如果 [metrics] metrics_use_pattern_matchfalse,则仅匹配精确的指标名称前缀。

如果 [metrics] metrics_use_pattern_matchtrue,则提供用于匹配的正则表达式模式。

类型

字符串

默认值

''

环境变量

AIRFLOW__METRICS__METRICS_BLOCK_LIST

示例

"scheduler,executor,dagrun,pool,triggerer,celery" "^scheduler,^executor,heartbeat|timeout"

metrics_use_pattern_match

2.9.0 版本中的新增功能。

如果为 true,则 [metrics] metrics_allow_list[metrics] metrics_block_list 将使用正则表达式模式匹配指标名称内的任何位置,而不仅仅是名称开头的匹配前缀。

类型

布尔值

默认值

False

环境变量

AIRFLOW__METRICS__METRICS_USE_PATTERN_MATCH

otel_debugging_on

2.7.0 版本新增。

如果为 True,则所有指标也会输出到控制台。默认为 False

类型

字符串

默认值

False

环境变量

AIRFLOW__METRICS__OTEL_DEBUGGING_ON

otel_host

2.6.0 版本新增。

指定 OpenTelemetry Collector 的主机名或 IP 地址,Airflow 将指标和跟踪发送到该地址。

类型

字符串

默认值

localhost

环境变量

AIRFLOW__METRICS__OTEL_HOST

otel_interval_milliseconds

2.6.0 版本新增。

定义 Airflow 将指标和跟踪批次发送到配置的 OpenTelemetry Collector 的时间间隔(以毫秒为单位)。

类型

整数

默认值

60000

环境变量

AIRFLOW__METRICS__OTEL_INTERVAL_MILLISECONDS

otel_on

2.6.0 版本新增。

启用向 OpenTelemetry 发送指标。

类型

字符串

默认值

False

环境变量

AIRFLOW__METRICS__OTEL_ON

otel_port

2.6.0 版本新增。

指定正在侦听的 OpenTelemetry Collector 的端口。

类型

字符串

默认值

8889

环境变量

AIRFLOW__METRICS__OTEL_PORT

otel_prefix

2.6.0 版本新增。

Airflow 指标的前缀。

类型

字符串

默认值

airflow

环境变量

AIRFLOW__METRICS__OTEL_PREFIX

otel_service

2.10.3 版本中的新功能。

跟踪的默认服务名称。

类型

字符串

默认值

Airflow

环境变量

AIRFLOW__METRICS__OTEL_SERVICE

otel_ssl_active

2.7.0 版本新增。

如果为 True,则将启用 SSL。默认为 False。要与 OpenTelemetry 收集器建立 HTTPS 连接,您需要在 OpenTelemetry 收集器的 config.yml 文件中配置 SSL 证书和密钥。

类型

字符串

默认值

False

环境变量

AIRFLOW__METRICS__OTEL_SSL_ACTIVE

stat_name_handler

2.0.0 版本新增。

用于验证 StatsD 统计信息名称的函数,如有必要,对统计信息名称应用更改并返回转换后的统计信息名称。

该函数应具有以下签名:

def func_name(stat_name: str) -> str: ...
类型

字符串

默认值

''

环境变量

AIRFLOW__METRICS__STAT_NAME_HANDLER

statsd_custom_client_path

2.0.0 版本新增。

如果您想使用自己的自定义 StatsD 客户端,请在下面设置相关的模块路径。注意:模块路径必须存在于您的 PYTHONPATH <https://docs.pythonlang.cn/3/using/cmdline.html#envvar-PYTHONPATH> 中,Airflow 才能找到它。

类型

字符串

默认值

None

环境变量

AIRFLOW__METRICS__STATSD_CUSTOM_CLIENT_PATH

statsd_datadog_enabled

2.0.0 版本新增。

启用 Datadog 集成以发送 Airflow 指标。

类型

字符串

默认值

False

环境变量

AIRFLOW__METRICS__STATSD_DATADOG_ENABLED

statsd_datadog_metrics_tags

2.6.0 版本新增。

设置为 False 以禁用某些发出的指标的元数据标签

类型

布尔值

默认值

True

环境变量

AIRFLOW__METRICS__STATSD_DATADOG_METRICS_TAGS

statsd_datadog_tags

2.0.0 版本新增。

附加到所有指标的 Datadog 标签列表(例如:key1:value1,key2:value2

类型

字符串

默认值

''

环境变量

AIRFLOW__METRICS__STATSD_DATADOG_TAGS

statsd_disabled_tags

2.6.0 版本新增。

如果您想避免将所有可用的指标标签发送到 StatsD,您可以配置一个前缀阻止列表(以逗号分隔),以过滤掉以列表元素开头的指标标签(例如:job_id,run_id

类型

字符串

默认值

job_id,run_id

环境变量

AIRFLOW__METRICS__STATSD_DISABLED_TAGS

示例

job_id,run_id,dag_id,task_id

statsd_host

2.0.0 版本新增。

指定 StatsD 守护进程(或服务器)运行的主机地址

类型

字符串

默认值

localhost

环境变量

AIRFLOW__METRICS__STATSD_HOST

statsd_influxdb_enabled

2.6.0 版本新增。

启用使用 StatsD-Influxdb 标记约定发送 Airflow 指标。

类型

布尔值

默认值

False

环境变量

AIRFLOW__METRICS__STATSD_INFLUXDB_ENABLED

statsd_on

2.0.0 版本新增。

启用将指标发送到 StatsD。

类型

字符串

默认值

False

环境变量

AIRFLOW__METRICS__STATSD_ON

statsd_port

2.0.0 版本新增。

指定 StatsD 守护进程(或服务器)正在侦听的端口

类型

字符串

默认值

8125

环境变量

AIRFLOW__METRICS__STATSD_PORT

statsd_prefix

2.0.0 版本新增。

定义从 Airflow 发送到 StatsD 的所有指标的命名空间

类型

字符串

默认值

airflow

环境变量

AIRFLOW__METRICS__STATSD_PREFIX

statsd_allow_list(已弃用)

自 2.6.0 版本起已弃用:该选项已移至 metrics.metrics_allow_list

statsd_block_list(已弃用)

自 2.6.0 版本起已弃用:该选项已移至 metrics.metrics_block_list

[operators]

allow_illegal_arguments

2.0.0 版本新增。

是否允许将额外的/未使用的参数 (args, kwargs) 传递给 BaseOperator 运算符。如果设置为 False,则会引发异常,否则只会显示控制台消息。

类型

字符串

默认值

False

环境变量

AIRFLOW__OPERATORS__ALLOW_ILLEGAL_ARGUMENTS

default_cpus

指示当运算符的配置中未指定特定 CPU 请求时,分配给每个运算符的默认 CPU 单元数

类型

字符串

默认值

1

环境变量

AIRFLOW__OPERATORS__DEFAULT_CPUS

default_deferrable

2.7.0 版本新增。

运算符和传感器中属性“deferrable”的默认值。

类型

布尔值

默认值

false

环境变量

AIRFLOW__OPERATORS__DEFAULT_DEFERRABLE

default_disk

指示当运算符的配置中未指定特定磁盘请求时,分配给每个运算符的默认磁盘存储量

类型

字符串

默认值

512

环境变量

AIRFLOW__OPERATORS__DEFAULT_DISK

default_gpus

指示当运算符的配置中未指定特定 GPU 请求时,分配给每个运算符的默认 GPU 数量

类型

字符串

默认值

0

环境变量

AIRFLOW__OPERATORS__DEFAULT_GPUS

default_owner

分配给每个新运算符的默认所有者,除非明确提供或通过 default_args 传递

类型

字符串

默认值

airflow

环境变量

AIRFLOW__OPERATORS__DEFAULT_OWNER

default_queue

2.1.0 版本新增。

任务被分配到的默认队列,以及工作节点在其上侦听的队列。

类型

字符串

默认值

default

环境变量

AIRFLOW__OPERATORS__DEFAULT_QUEUE

default_ram

指示当运算符的配置中未指定特定 RAM 请求时,分配给每个运算符的默认 RAM 量

类型

字符串

默认值

512

环境变量

AIRFLOW__OPERATORS__DEFAULT_RAM

[scheduler]

allow_trigger_in_future

1.10.8 版本新增。

允许未来执行日期的外部触发 DagRuns。仅当 DAG 中 schedule_interval 设置为 None 时才有效

类型

布尔值

默认值

False

环境变量

AIRFLOW__SCHEDULER__ALLOW_TRIGGER_IN_FUTURE

allowed_run_id_pattern

2.6.3 版本中的新增功能。

run_id 模式,用于验证触发 DAG 时用户输入到 run_id 参数的有效性。此模式不能更改调度器用于为计划的 DAG 运行或在不更改 run_id 参数的情况下触发的 DAG 运行生成 run_id 的模式。

类型

字符串

默认值

^[A-Za-z0-9_.~:+-]+$

环境变量

AIRFLOW__SCHEDULER__ALLOWED_RUN_ID_PATTERN

catchup_by_default

通过将其设置为 False 来关闭调度器追赶。默认行为不变,命令行回填仍然有效,但如果此项为 False,则调度器不会执行调度器追赶,但是可以在 DAG 定义中(追赶)按每个 DAG 进行设置

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__CATCHUP_BY_DEFAULT

child_process_log_directory

确定将存储调度器的子进程的日志的目录

类型

字符串

默认值

{AIRFLOW_HOME}/logs/scheduler

环境变量

AIRFLOW__SCHEDULER__CHILD_PROCESS_LOG_DIRECTORY

create_cron_data_intervals

2.9.0 版本中的新增功能。

当向 DAG 的 schedule 参数提供 cron 字符串时,是否为跨越时间间隔或单个时间点的 cron 计划创建 DAG 运行。

  • True:使用 CronDataIntervalTimetable,它适用于具有明确定义的数据间隔的 DAG。您可以从上一个间隔的末尾到计划的日期时间获取连续间隔。

  • False:使用 CronTriggerTimetable,它更接近 cron 本身的行为。

值得注意的是,对于 CronTriggerTimetable,逻辑日期与 DAG 运行尝试计划的时间相同,而对于 CronDataIntervalTimetable,逻辑日期是数据间隔的开始,但 DAG 运行将在数据间隔的末尾尝试计划。

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__CREATE_CRON_DATA_INTERVALS

dag_dir_list_interval

扫描 DAG 目录以查找新文件的频率(以秒为单位)。默认为 5 分钟。

类型

整数

默认值

300

环境变量

AIRFLOW__SCHEDULER__DAG_DIR_LIST_INTERVAL

dag_stale_not_seen_duration

2.4.0 版本新增。

仅当 [scheduler] standalone_dag_processor 为 true 时适用。DAG 处理器未更新 DAG 后被停用的时间(以秒为单位)。

类型

整数

默认值

600

环境变量

AIRFLOW__SCHEDULER__DAG_STALE_NOT_SEEN_DURATION

enable_health_check

2.4.0 版本新增。

当您启动调度器时,如果此项设置为 True,airflow 会启动一个微型 Web 服务器子进程来提供健康检查

类型

布尔值

默认值

False

环境变量

AIRFLOW__SCHEDULER__ENABLE_HEALTH_CHECK

file_parsing_sort_mode

2.1.0 版本新增。

以下之一:modified_timerandom_seeded_by_hostalphabetical。调度器将列出并排序 dag 文件以确定解析顺序。

  • modified_time:按文件的修改时间排序。这在大规模上非常有用,可以首先解析最近修改的 DAG。

  • random_seeded_by_host:跨多个调度器随机排序,但在同一主机上具有相同的顺序。当在 HA 模式下使用调度器运行时,这很有用,其中每个调度器可以解析不同的 DAG 文件。

  • alphabetical:按文件名排序

类型

字符串

默认值

modified_time

环境变量

AIRFLOW__SCHEDULER__FILE_PARSING_SORT_MODE

ignore_first_depends_on_past_by_default

2.3.0 版本新增。

将其设置为 True 将使任务的第一个任务实例忽略 depends_on_past 设置。当数据库中没有执行日期早于它的任务实例时,任务实例将被视为任务的第一个任务实例,即新添加的任务无需手动标记成功即可进行调度。

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__IGNORE_FIRST_DEPENDS_ON_PAST_BY_DEFAULT

job_heartbeat_sec

任务实例侦听外部终止信号(当您从 CLI 或 UI 清除任务时),这定义了它们应该侦听的频率(以秒为单位)。

类型

浮点数

默认值

5

环境变量

AIRFLOW__SCHEDULER__JOB_HEARTBEAT_SEC

local_task_job_heartbeat_sec

2.7.0 版本新增。

LocalTaskJob 应向调度器发送心跳信号以通知它仍然存活的频率(以秒为单位)。如果此值设置为 0,则心跳间隔将默认为 [scheduler] scheduler_zombie_task_threshold 的值。

类型

整数

默认值

0

环境变量

AIRFLOW__SCHEDULER__LOCAL_TASK_JOB_HEARTBEAT_SEC

max_callbacks_per_loop

2.3.0 版本新增。

仅当 [scheduler] standalone_dag_processor 为 true 且回调存储在数据库中时适用。包含在单个循环中获取的最大回调数。

类型

整数

默认值

20

环境变量

AIRFLOW__SCHEDULER__MAX_CALLBACKS_PER_LOOP

max_dagruns_per_loop_to_schedule

2.0.0 版本新增。

调度器在调度和队列任务时应该检查(并锁定)多少个 DagRun。

另请参阅

调度器配置选项

类型

整数

默认值

20

环境变量

AIRFLOW__SCHEDULER__MAX_DAGRUNS_PER_LOOP_TO_SCHEDULE

max_dagruns_to_create_per_loop

2.0.0 版本新增。

每个调度器循环为 DAG 创建 DagRun 的最大数量。

另请参阅

调度器配置选项

类型

整数

默认值

10

环境变量

AIRFLOW__SCHEDULER__MAX_DAGRUNS_TO_CREATE_PER_LOOP

max_tis_per_query

这会更改调度主循环中查询的批处理大小。此值不应大于 [core] parallelism。如果此值过高,SQL 查询性能可能会因查询谓词的复杂性和/或过度锁定而受到影响。此外,您可能会达到数据库允许的最大查询长度。将其设置为 0 以使用 [core] parallelism 的值

类型

整数

默认值

16

环境变量

AIRFLOW__SCHEDULER__MAX_TIS_PER_QUERY

min_file_process_interval

解析 DAG 文件后的秒数。DAG 文件每 [scheduler] min_file_process_interval 秒解析一次。此间隔后会反映对 DAG 的更新。保持此值较低会增加 CPU 使用率。

类型

整数

默认值

30

环境变量

AIRFLOW__SCHEDULER__MIN_FILE_PROCESS_INTERVAL

num_runs

1.10.6 版本新增。

尝试调度每个 DAG 文件的次数,-1 表示无限次

类型

整数

默认值

-1

环境变量

AIRFLOW__SCHEDULER__NUM_RUNS

orphaned_tasks_check_interval

2.0.0 版本新增。

调度器应多久(以秒为单位)检查孤立任务和 SchedulerJob

类型

浮点数

默认值

300.0

环境变量

AIRFLOW__SCHEDULER__ORPHANED_TASKS_CHECK_INTERVAL

parsing_cleanup_interval

2.5.0 版本新增。

多久(以秒为单位)检查过时的 DAG(不再存在于预期文件中的 DAG),这些 DAG 应被停用,以及不再被引用且应标记为孤立的数据集。

类型

整数

默认值

60

环境变量

AIRFLOW__SCHEDULER__PARSING_CLEANUP_INTERVAL

parsing_pre_import_modules

2.6.0 版本新增。

调度器读取 dag 文件以提取要使用的 airflow 模块,并提前导入它们,以避免为每个解析过程重复此操作。可以将此标志设置为 False 以禁用此行为,以防每次都需要重新导入 airflow 模块(以增加 DAG 解析时间为代价)。

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__PARSING_PRE_IMPORT_MODULES

parsing_processes

1.10.14 版本新增。

调度器可以并行运行多个进程来解析 dag。这定义了将运行多少个进程。

类型

整数

默认值

2

环境变量

AIRFLOW__SCHEDULER__PARSING_PROCESSES

pool_metrics_interval

2.0.0 版本新增。

池使用情况统计信息应多久(以秒为单位)发送到 StatsD(如果启用了 statsd_on)

类型

浮点数

默认值

5.0

环境变量

AIRFLOW__SCHEDULER__POOL_METRICS_INTERVAL

schedule_after_task_execution

2.0.0 版本新增。

任务主管进程是否应执行“迷你调度器”以尝试调度同一 DAG 的更多任务。保持此设置启用将意味着同一 DAG 中的任务执行速度更快,但在某些情况下可能会使其他 dag 处于饥饿状态

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__SCHEDULE_AFTER_TASK_EXECUTION

scheduler_health_check_server_host

2.8.0 版本新增。

当您启动调度器时,airflow 会启动一个小型 Web 服务器子进程,以便在此主机上提供运行状况检查

类型

字符串

默认值

0.0.0.0

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_SERVER_HOST

scheduler_health_check_server_port

2.4.0 版本新增。

当您启动调度器时,airflow 会启动一个小型 Web 服务器子进程,以便在此端口上提供运行状况检查

类型

整数

默认值

8974

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_SERVER_PORT

scheduler_health_check_threshold

1.10.2 版本新增。

如果上次调度器心跳发生在 [scheduler] scheduler_health_check_threshold 秒之前,则认为调度器不健康。这由 /health 端点中的运行状况检查和 SchedulerJob 的 airflow jobs check CLI 使用。

类型

整数

默认值

30

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_THRESHOLD

scheduler_heartbeat_sec

调度器不断尝试触发新任务(有关详细信息,请参阅文档中的调度器部分)。这定义了调度器应多久运行一次(以秒为单位)。

类型

整数

默认值

5

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_HEARTBEAT_SEC

scheduler_idle_sleep_time

2.2.0 版本新增。

控制调度器在循环之间休眠的时间,但如果循环中没有任何事情要做。即,如果它调度了某些内容,那么它将立即开始下一次循环迭代。

类型

浮点数

默认值

1

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_IDLE_SLEEP_TIME

scheduler_zombie_task_threshold

本地任务作业会定期向数据库发送心跳。如果作业在此秒数内未发送心跳,调度器会将关联的任务实例标记为失败,并将重新调度任务。

类型

整数

默认值

300

环境变量

AIRFLOW__SCHEDULER__SCHEDULER_ZOMBIE_TASK_THRESHOLD

stale_dag_threshold

2.6.0 版本新增。

在重新解析 DAG 文件后,等待多久(以秒为单位),然后再停用过时的 DAG(不再存在于预期文件中的 DAG)。我们需要此阈值的原因是为了考虑文件被解析和加载 DAG 之间的时间。这可能需要的绝对最大时间是 [core] dag_file_processor_timeout,但是当您配置了较长的超时时间时,会导致停用过时 dag 的时间明显延迟。

类型

整数

默认值

50

环境变量

AIRFLOW__SCHEDULER__STALE_DAG_THRESHOLD

standalone_dag_processor

2.3.0 版本新增。

dag 处理器是作为独立进程运行还是作为调度器作业的子进程运行。

类型

布尔值

默认值

False

环境变量

AIRFLOW__SCHEDULER__STANDALONE_DAG_PROCESSOR

task_queued_timeout

2.6.0 版本新增。

任务在排队状态可以持续的时间,之后将重试或设置为失败。

类型

浮点数

默认值

600.0

环境变量

AIRFLOW__SCHEDULER__TASK_QUEUED_TIMEOUT

task_queued_timeout_check_interval

2.6.0 版本新增。

多久检查一次在排队状态的时间长于 [scheduler] task_queued_timeout 的任务。

类型

浮点数

默认值

120.0

环境变量

AIRFLOW__SCHEDULER__TASK_QUEUED_TIMEOUT_CHECK_INTERVAL

trigger_timeout_check_interval

2.2.0 版本新增。

多久检查一次尚未运行的过期触发请求。

类型

浮点数

默认值

15

环境变量

AIRFLOW__SCHEDULER__TRIGGER_TIMEOUT_CHECK_INTERVAL

use_job_schedule

1.10.2 版本新增。

通过将此项设置为 False 来关闭调度器对 cron 间隔的使用。在 Web UI 中手动提交或使用 trigger_dag 提交的 DAG 仍将运行。

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__USE_JOB_SCHEDULE

use_row_level_locking

2.0.0 版本新增。

调度器是否应在相关查询中发出 SELECT ... FOR UPDATE。如果将其设置为 False,则您不应同时运行多个调度器

类型

布尔值

默认值

True

环境变量

AIRFLOW__SCHEDULER__USE_ROW_LEVEL_LOCKING

zombie_detection_interval

2.3.0 版本新增。

调度器应多久(以秒为单位)检查僵尸任务。

类型

浮点数

默认值

10.0

环境变量

AIRFLOW__SCHEDULER__ZOMBIE_DETECTION_INTERVAL

deactivate_stale_dags_interval(已弃用)

自 2.5.0 版本起已弃用: 该选项已移至 scheduler.parsing_cleanup_interval

max_threads(已弃用)

自 1.10.14 版本起已弃用: 该选项已移至 scheduler.parsing_processes

processor_poll_interval(已弃用)

自 2.2.0 版本起已弃用: 该选项已移至 scheduler.scheduler_idle_sleep_time

stat_name_handler(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.stat_name_handler

statsd_allow_list(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.statsd_allow_list

statsd_custom_client_path(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.statsd_custom_client_path

statsd_datadog_enabled(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.statsd_datadog_enabled

statsd_datadog_metrics_tags(已弃用)

自 2.6.0 版本起已弃用: 该选项已移至 metrics.statsd_datadog_metrics_tags

statsd_datadog_tags(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.statsd_datadog_tags

statsd_host(已弃用)

自 2.0.0 版本起已弃用: 该选项已移至 metrics.statsd_host

statsd_on(已弃用)

自 2.0.0 版本起已弃用: 该选项已移动至 metrics.statsd_on

statsd_port (已弃用)

自 2.0.0 版本起已弃用: 该选项已移动至 metrics.statsd_port

statsd_prefix (已弃用)

自 2.0.0 版本起已弃用: 该选项已移动至 metrics.statsd_prefix

[secrets]

backend

1.10.10 版本中的新增功能。

要启用的 secrets 后端的完整类名(将在搜索路径中优先于环境变量和 metastore)

类型

字符串

默认值

''

环境变量

AIRFLOW__SECRETS__BACKEND

示例

airflow.providers.amazon.aws.secrets.systems_manager.SystemsManagerParameterStoreBackend

backend_kwargs

1.10.10 版本中的新增功能。

backend_kwargs 参数加载到字典中,并传递给 secrets 后端类的 __init__。请参阅您正在使用的 secrets 后端的文档。期望 JSON 格式。

AWS Systems Manager ParameterStore 的示例: {"connections_prefix": "/airflow/connections", "profile_name": "default"}

类型

字符串

默认值

''

环境变量

AIRFLOW__SECRETS__BACKEND_KWARGS

AIRFLOW__SECRETS__BACKEND_KWARGS_CMD

AIRFLOW__SECRETS__BACKEND_KWARGS_SECRET

cache_ttl_seconds

2.7.0 版本新增。

注意

这是一个 实验性功能

启用缓存后,这是我们认为缓存中的条目有效的持续时间。如果条目早于此秒数,则会刷新条目。这意味着启用缓存后,您需要等待看到变量更改生效的最长时间。

类型

整数

默认值

900

环境变量

AIRFLOW__SECRETS__CACHE_TTL_SECONDS

use_cache

2.7.0 版本新增。

注意

这是一个 实验性功能

仅在解析 DAG 时启用变量的本地缓存。如果在顶层代码中使用变量,则使用此选项可以加快 DAG 解析速度,但代价是更改的传播时间更长。请注意,此缓存仅与 DAG 解析步骤有关。当 DAG 任务运行时,不会进行缓存。

类型

布尔值

默认值

False

环境变量

AIRFLOW__SECRETS__USE_CACHE

[sensors]

default_timeout

2.3.0 版本新增。

Sensor 的默认超时时间,默认为 7 天 (7 * 24 * 60 * 60)。

类型

浮点数

默认值

604800

环境变量

AIRFLOW__SENSORS__DEFAULT_TIMEOUT

[sentry]

Sentry 集成。您可以在此处根据 Python 平台提供其他配置选项。有关详细信息,请参阅 Python / 配置 / 基本选项。不支持的选项:integrations, in_app_include, in_app_exclude, ignore_errors, before_breadcrumb, transport

before_send

2.2.0 版本新增。

sentry SDK 应配置使用的 before_send 函数的点分路径。

类型

字符串

默认值

None

环境变量

AIRFLOW__SENTRY__BEFORE_SEND

sentry_dsn

1.10.6 版本新增。

类型

字符串

默认值

''

环境变量

AIRFLOW__SENTRY__SENTRY_DSN

AIRFLOW__SENTRY__SENTRY_DSN_CMD

AIRFLOW__SENTRY__SENTRY_DSN_SECRET

sentry_on

2.0.0 版本新增。

启用向 Sentry 报告错误

类型

字符串

默认值

false

环境变量

AIRFLOW__SENTRY__SENTRY_ON

[smtp]

如果您希望 airflow 在重试、失败时发送电子邮件,并且希望使用 airflow.utils.email.send_email_smtp 函数,则必须在此处配置 smtp 服务器

smtp_host

指定 Airflow 通过 SMTP 发送电子邮件通知时使用的主机服务器地址。

类型

字符串

默认值

localhost

环境变量

AIRFLOW__SMTP__SMTP_HOST

smtp_mail_from

指定 Airflow 发送电子邮件通知时使用的默认**发件人**电子邮件地址。

类型

字符串

默认值

[email protected]

环境变量

AIRFLOW__SMTP__SMTP_MAIL_FROM

smtp_password

连接到 smtp 服务器时进行身份验证的密码。

类型

字符串

默认值

None

环境变量

AIRFLOW__SMTP__SMTP_PASSWORD

AIRFLOW__SMTP__SMTP_PASSWORD_CMD

AIRFLOW__SMTP__SMTP_PASSWORD_SECRET

示例

airflow

smtp_port

定义 Airflow 连接到 SMTP 服务器以发送电子邮件通知的端口号。

类型

字符串

默认值

25

环境变量

AIRFLOW__SMTP__SMTP_PORT

smtp_retry_limit

2.0.0 版本新增。

定义 Airflow 尝试连接到 SMTP 服务器的最大次数。

类型

整数

默认值

5

环境变量

AIRFLOW__SMTP__SMTP_RETRY_LIMIT

smtp_ssl

确定与 SMTP 服务器通信时是否使用 SSL 连接。

类型

字符串

默认值

False

环境变量

AIRFLOW__SMTP__SMTP_SSL

smtp_starttls

确定连接到 SMTP 服务器时是否使用 STARTTLS 命令。

类型

字符串

默认值

True

环境变量

AIRFLOW__SMTP__SMTP_STARTTLS

smtp_timeout

2.0.0 版本新增。

确定 Apache Airflow 系统等待与 SMTP 服务器建立连接的最长时间(以秒为单位)。

类型

整数

默认值

30

环境变量

AIRFLOW__SMTP__SMTP_TIMEOUT

smtp_user

连接到 smtp 服务器时进行身份验证的用户名。

类型

字符串

默认值

None

环境变量

AIRFLOW__SMTP__SMTP_USER

示例

airflow

[traces]

分布式跟踪集成设置。

otel_debugging_on

2.10.0 版本中的新增功能。

如果为 True,则所有跟踪也会发送到控制台。默认为 False。

类型

字符串

默认值

False

环境变量

AIRFLOW__TRACES__OTEL_DEBUGGING_ON

otel_host

2.10.0 版本中的新增功能。

指定 Airflow 向其发送跟踪的 OpenTelemetry Collector 的主机名或 IP 地址。

类型

字符串

默认值

localhost

环境变量

AIRFLOW__TRACES__OTEL_HOST

otel_on

2.10.0 版本中的新增功能。

启用将跟踪发送到 OpenTelemetry。

类型

字符串

默认值

False

环境变量

AIRFLOW__TRACES__OTEL_ON

otel_port

2.10.0 版本中的新增功能。

指定正在侦听的 OpenTelemetry Collector 的端口。

类型

字符串

默认值

8889

环境变量

AIRFLOW__TRACES__OTEL_PORT

otel_service

2.10.0 版本中的新增功能。

跟踪的默认服务名称。

类型

字符串

默认值

Airflow

环境变量

AIRFLOW__TRACES__OTEL_SERVICE

otel_ssl_active

2.10.0 版本中的新增功能。

如果为 True,则启用 SSL。默认为 False。要与 OpenTelemetry 收集器建立 HTTPS 连接,您需要在 OpenTelemetry 收集器的 config.yml 文件中配置 SSL 证书和密钥。

类型

字符串

默认值

False

环境变量

AIRFLOW__TRACES__OTEL_SSL_ACTIVE

otel_task_log_event

2.10.0 版本中的新增功能。

如果为 True,则在任务完成后,完整的任务日志消息将作为 span 事件添加,并按 64k 大小分块。默认为 False。

类型

字符串

默认值

False

环境变量

AIRFLOW__TRACES__OTEL_TASK_LOG_EVENT

[triggerer]

default_capacity

2.2.0 版本新增。

默认情况下,单个 Triggerer 一次将运行多少个触发器。

类型

字符串

默认值

1000

环境变量

AIRFLOW__TRIGGERER__DEFAULT_CAPACITY

job_heartbeat_sec

2.6.3 版本中的新增功能。

触发器作业心跳的频率,以确保它没有被终止。

类型

浮点数

默认值

5

环境变量

AIRFLOW__TRIGGERER__JOB_HEARTBEAT_SEC

triggerer_health_check_threshold

2.7.0 版本新增。

如果上次触发器心跳发生在 [triggerer] triggerer_health_check_threshold 秒之前,则认为触发器不健康。这用于 **/health** 端点中的健康检查和 airflow jobs check CLI 中用于 TriggererJob 的健康检查。

类型

浮点数

默认值

30

环境变量

AIRFLOW__TRIGGERER__TRIGGERER_HEALTH_CHECK_THRESHOLD

[usage_data_collection]

Airflow 集成了 Scarf,以在运行期间收集基本的平台和使用数据。此数据有助于 Airflow 维护人员更好地了解 Airflow 的使用方式。从此遥测中获得的见解对于确定补丁、次要版本和安全修复的优先级至关重要。此外,此信息支持与开发路线图相关的关键决策。有关收集哪些数据的更多信息,请查看 FAQ 文档。

部署可以通过将 enabled 选项设置为 False,或使用 SCARF_ANALYTICS=false 环境变量来选择退出分析。个人用户可以轻松地以 Scarf 请勿跟踪文档 中记录的各种方式选择退出分析。

enabled

2.10.0 版本中的新增功能。

启用或禁用使用情况数据收集和发送。

类型

布尔值

默认值

True

环境变量

AIRFLOW__USAGE_DATA_COLLECTION__ENABLED

[webserver]

access_denied_message

2.7.0 版本新增。

当用户尝试执行超出其授权权限的操作时显示的消息。

类型

字符串

默认值

访问 拒绝

环境变量

AIRFLOW__WEBSERVER__ACCESS_DENIED_MESSAGE

access_logfile

gunicorn Web 服务器的日志文件。“-”表示记录到 stderr。

类型

字符串

默认值

-

环境变量

AIRFLOW__WEBSERVER__ACCESS_LOGFILE

access_logformat

2.0.0 版本新增。

gunicorn Web 服务器的访问日志格式。默认格式是 %%(h)s %%(l)s %%(u)s %%(t)s "%%(r)s" %%(s)s %%(b)s "%%(f)s" "%%(a)s"。有关更多详细信息,请参阅 Gunicorn 设置:“access_log_format”参考

类型

字符串

默认值

''

环境变量

AIRFLOW__WEBSERVER__ACCESS_LOGFORMAT

allow_raw_html_descriptions

2.8.0 版本新增。

DAG 作者可以在 doc_mddescription_md 中的参数描述中提供任何原始 HTML 进行文本格式化。这包括潜在的不安全的 JavaScript。在 Web UI 中显示 DAG 或触发表单使 DAG 作者有可能将恶意代码注入到客户端浏览器中。为确保 Web UI 默认安全,默认禁用原始 HTML。如果您信任您的 DAG 作者,则可以通过将此选项设置为 True 来启用 Markdown 中的 HTML 支持。

此参数还启用 DAG 参数中已弃用的字段 description_htmlcustom_html_form,直到该功能在未来版本中被删除。

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__ALLOW_RAW_HTML_DESCRIPTIONS

示例

False

allowed_payload_size

2.8.1 版本中的新增功能。

可以发送的请求负载的最大大小(以 MB 为单位)。

类型

浮点数

默认值

1.0

环境变量

AIRFLOW__WEBSERVER__ALLOWED_PAYLOAD_SIZE

analytics_id

1.10.5 版本中的新增功能。

您在分析工具中的帐户唯一 ID

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__ANALYTICS_ID

analytics_tool

将匿名用户活动发送到您的分析工具,请从 google_analyticssegmentmetaroutermatomo 中选择。

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__ANALYTICS_TOOL

analytics_url

2.9.0 版本中的新增功能。

您的实例 URL,仅适用于 Matomo。

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__ANALYTICS_URL

示例

https://your.matomo.instance.com/

audit_view_excluded_events

2.3.0 版本新增。

要从 DAG 审计视图中排除的视图事件的逗号分隔字符串。所有其他事件将被添加,减去此处传递的事件。数据库中的审计日志不会受此参数影响。

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__AUDIT_VIEW_EXCLUDED_EVENTS

示例

cli_task_run,running,success

audit_view_included_events

2.3.0 版本新增。

要包含在 DAG 审计视图中的视图事件的逗号分隔字符串。如果传递,则只有这些事件将填充 DAG 审计视图。数据库中的审计日志不会受此参数影响。

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__AUDIT_VIEW_INCLUDED_EVENTS

示例

dagrun_cleared,failed

auto_refresh_interval

2.2.0 版本新增。

当启用自动刷新时,DAG 数据在图形或网格视图中自动刷新的频率(以秒为单位)

类型

整数

默认值

3

环境变量

AIRFLOW__WEBSERVER__AUTO_REFRESH_INTERVAL

base_url

您的网站的基本 URL:Airflow 无法猜测您正在使用哪个域名或 CNAME。这用于在“浏览 - 任务实例”菜单中的“日志 URL”列中以及由 Airflow 发送的包含指向您的 Web 服务器链接的任何自动电子邮件中创建链接。

类型

字符串

默认值

https://127.0.0.1:8080

环境变量

AIRFLOW__WEBSERVER__BASE_URL

caching_hash_method

2.6.0 版本新增。

Web 服务器使用的缓存算法。必须是有效的 hashlib 函数名称。

类型

字符串

默认值

md5

环境变量

AIRFLOW__WEBSERVER__CACHING_HASH_METHOD

示例

sha256

config_file

2.7.0 版本新增。

用于配置 Web 服务器参数的 Web 服务器配置文件的路径

类型

字符串

默认值

{AIRFLOW_HOME}/webserver_config.py

环境变量

AIRFLOW__WEBSERVER__CONFIG_FILE

dag_default_view

默认 DAG 视图。有效值为:gridgraphdurationganttlanding_times

类型

字符串

默认值

grid

环境变量

AIRFLOW__WEBSERVER__DAG_DEFAULT_VIEW

dag_orientation

默认 DAG 方向。有效值为:LR (左->右)、TB (上->下)、RL (右->左)、BT (下->上)

类型

字符串

默认值

LR

环境变量

AIRFLOW__WEBSERVER__DAG_ORIENTATION

default_dag_run_display_number

要在 UI 中显示的默认 dagrun

类型

字符串

默认值

25

环境变量

AIRFLOW__WEBSERVER__DEFAULT_DAG_RUN_DISPLAY_NUMBER

default_ui_timezone

1.10.10 版本中的新增功能。

用于在 UI 中显示所有日期的默认时区,可以是 UTC、系统或任何 IANA 时区字符串(例如,**Europe/Amsterdam**)。如果留空,则将使用 core/default_timezone 的默认值。

类型

字符串

默认值

UTC

环境变量

AIRFLOW__WEBSERVER__DEFAULT_UI_TIMEZONE

示例

America/New_York

default_wrap

1.10.4 版本中的新增功能。

DAG 代码和 TI 日志视图上换行切换的默认设置。

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__DEFAULT_WRAP

enable_proxy_fix

1.10.1 版本中的新增功能。

为反向代理启用 werkzeug ProxyFix 中间件

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__ENABLE_PROXY_FIX

enable_swagger_ui

2.6.0 版本新增。

在 Web 服务器中运行 SwaggerUI 的布尔值。

类型

布尔值

默认值

True

环境变量

AIRFLOW__WEBSERVER__ENABLE_SWAGGER_UI

error_logfile

gunicorn Web 服务器的日志文件。“-”表示记录到 stderr。

类型

字符串

默认值

-

环境变量

AIRFLOW__WEBSERVER__ERROR_LOGFILE

expose_config

在 Web 服务器中公开配置文件。设置为 non-sensitive-only 以显示除具有安全含义的值以外的所有值。True 显示所有值。False 完全隐藏配置。

类型

字符串

默认值

False

环境变量

AIRFLOW__WEBSERVER__EXPOSE_CONFIG

expose_hostname

1.10.8 版本新增。

在 Web 服务器中公开主机名

类型

字符串

默认值

False

环境变量

AIRFLOW__WEBSERVER__EXPOSE_HOSTNAME

expose_stacktrace

1.10.8 版本新增。

在 Web 服务器中公开堆栈跟踪

类型

字符串

默认值

False

环境变量

AIRFLOW__WEBSERVER__EXPOSE_STACKTRACE

grid_view_sorting_order

2.7.0 版本新增。

网格视图中的排序顺序。有效值为:topologicalhierarchical_alphabetical

类型

字符串

默认值

topological

环境变量

AIRFLOW__WEBSERVER__GRID_VIEW_SORTING_ORDER

hide_paused_dags_by_default

默认情况下,Web 服务器显示已暂停的 DAG。翻转此项以默认隐藏已暂停的 DAG

类型

字符串

默认值

False

环境变量

AIRFLOW__WEBSERVER__HIDE_PAUSED_DAGS_BY_DEFAULT

instance_name

2.1.0 版本新增。

为 DAG 概览页面设置自定义页面标题,并为所有页面设置站点标题

类型

字符串

默认值

None

环境变量

AIRFLOW__WEBSERVER__INSTANCE_NAME

instance_name_has_markup

2.3.0 版本新增。

DAG 概览页面的自定义页面标题是否包含任何标记语言

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__INSTANCE_NAME_HAS_MARKUP

log_animation_speed

1.10.8 版本新增。

自动尾部日志显示动画速度。

类型

整数

默认值

1000

环境变量

AIRFLOW__WEBSERVER__LOG_ANIMATION_SPEED

log_auto_tailing_offset

1.10.8 版本新增。

距页面底部多远时启用自动尾部。

类型

整数

默认值

30

环境变量

AIRFLOW__WEBSERVER__LOG_AUTO_TAILING_OFFSET

log_fetch_delay_sec

1.10.8 版本新增。

等待下一次日志获取的时间间隔(以秒为单位)。

类型

整数

默认值

2

环境变量

AIRFLOW__WEBSERVER__LOG_FETCH_DELAY_SEC

log_fetch_timeout_sec

Web 服务器在从其他工作机器获取日志时等待初始握手的时间量(以秒为单位)

类型

字符串

默认值

5

环境变量

AIRFLOW__WEBSERVER__LOG_FETCH_TIMEOUT_SEC

num_recent_configurations_for_trigger

2.9.0 版本中的新增功能。

触发 Web 表单上的选择器中最近的 DAG 运行配置的数量。

类型

整数

默认值

5

环境变量

AIRFLOW__WEBSERVER__NUM_RECENT_CONFIGURATIONS_FOR_TRIGGER

示例

10

page_size

UI 中所有列表视图的统一页面大小

类型

字符串

默认值

100

环境变量

AIRFLOW__WEBSERVER__PAGE_SIZE

proxy_fix_x_for

1.10.7 版本新增。

要信任的 X-Forwarded-For 的值数量。有关更多详细信息,请参阅 Werkzeug:X-Forwarded-For 代理修复

类型

整数

默认值

1

环境变量

AIRFLOW__WEBSERVER__PROXY_FIX_X_FOR

proxy_fix_x_host

1.10.7 版本新增。

要信任的 X-Forwarded-Host 的值数量。有关更多详细信息,请参阅 Werkzeug:X-Forwarded-For 代理修复

类型

整数

默认值

1

环境变量

AIRFLOW__WEBSERVER__PROXY_FIX_X_HOST

proxy_fix_x_port

1.10.7 版本新增。

信任 X-Forwarded-Port 值的数量。有关更多详细信息,请参阅 Werkzeug: X-Forwarded-For Proxy Fix

类型

整数

默认值

1

环境变量

AIRFLOW__WEBSERVER__PROXY_FIX_X_PORT

proxy_fix_x_prefix

1.10.7 版本新增。

信任 X-Forwarded-Prefix 值的数量。有关更多详细信息,请参阅 Werkzeug: X-Forwarded-For Proxy Fix

类型

整数

默认值

1

环境变量

AIRFLOW__WEBSERVER__PROXY_FIX_X_PREFIX

proxy_fix_x_proto

1.10.7 版本新增。

信任 X-Forwarded-Proto 值的数量。有关更多详细信息,请参阅 Werkzeug: X-Forwarded-For Proxy Fix

类型

整数

默认值

1

环境变量

AIRFLOW__WEBSERVER__PROXY_FIX_X_PROTO

reload_on_plugin_change

1.10.11 版本中的新功能。

如果设置为 True,Airflow 将跟踪 plugins_folder 目录中的文件。当它检测到更改时,它会重新加载 gunicorn。如果设置为 True,gunicorn 将在不预加载的情况下启动,这会较慢,使用更多内存,并可能导致竞争条件。避免在生产环境中将其设置为 True

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__RELOAD_ON_PLUGIN_CHANGE

require_confirmation_dag_change

2.9.0 版本中的新增功能。

在 Web UI 中更改 DAG 时需要确认。这是为了防止意外更改可能在生产等敏感环境中运行的 DAG。当设置为 True 时,当用户尝试暂停/取消暂停、触发 DAG 时,将显示确认对话框。

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__REQUIRE_CONFIRMATION_DAG_CHANGE

run_internal_api

2.6.0 版本新增。

在 Web 服务器中运行内部 API 的布尔值。

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__RUN_INTERNAL_API

secret_key

用于运行 Flask 应用程序的密钥。它应该尽可能随机。但是,当运行多个 Web 服务器实例时,请确保所有实例都使用相同的 secret_key,否则其中一个实例将出现“CSRF 会话令牌丢失”的错误。Web 服务器密钥还用于授权检索日志时对 Celery 工作人员的请求。使用密钥生成的令牌虽然具有较短的过期时间,但请确保运行 Airflow 组件的所有计算机上的时间同步(例如使用 ntpd),否则当访问日志时可能会收到“禁止”错误。

类型

字符串

默认值

{SECRET_KEY}

环境变量

AIRFLOW__WEBSERVER__SECRET_KEY

AIRFLOW__WEBSERVER__SECRET_KEY_CMD

AIRFLOW__WEBSERVER__SECRET_KEY_SECRET

session_backend

2.2.4 版本新增。

用于存储 Web 会话数据的后端类型,可以是 databasesecurecookie。对于 database 后端,会话存储在数据库中,并且可以在那里进行管理(例如,当您重置用户的密码时,将删除该用户的所有会话)。对于 securecookie 后端,会话存储在客户端的加密 cookie 中。securecookie 机制比数据库后端“更轻便”,但是当您重置用户的密码时,会话不会被删除,这意味着除了等待过期时间外,使所有用户会话无效的唯一方法是更改 secret_key 并重新启动 Web 服务器(这也将使所有其他用户的会话无效并注销)。

当您使用 database 后端时,请确保定期运行 airflow db clean --table session 命令,以保持数据库会话表较小,特别是如果您有自动化 API 调用,这些调用将为每次调用创建一个新会话,而不是重用存储在浏览器 cookie 中的会话。

类型

字符串

默认值

database

环境变量

AIRFLOW__WEBSERVER__SESSION_BACKEND

示例

securecookie

session_lifetime_minutes

1.10.13 版本中的新功能。

UI cookie 的生命周期(分钟)。用户在 [webserver] session_lifetime_minutes 不活动后将从 UI 注销

类型

整数

默认值

43200

环境变量

AIRFLOW__WEBSERVER__SESSION_LIFETIME_MINUTES

show_recent_stats_for_completed_runs

2.0.0 版本新增。

如果设置,则“最近的任务”统计信息将显示旧的 DagRun

类型

布尔值

默认值

True

环境变量

AIRFLOW__WEBSERVER__SHOW_RECENT_STATS_FOR_COMPLETED_RUNS

show_trigger_form_if_no_params

2.7.0 版本新增。

对于没有参数的 DAG,触发 DAG 运行按钮的行为。False 表示跳过并触发,而不显示用于添加 dag_run.conf 的表单,True 表示始终显示表单。如果定义了参数,则始终显示该表单。

类型

布尔值

默认值

False

环境变量

AIRFLOW__WEBSERVER__SHOW_TRIGGER_FORM_IF_NO_PARAMS

warn_deployment_exposure

2.3.0 版本新增。

用于显示公开可见的部署警告的布尔值

类型

布尔值

默认值

True

环境变量

AIRFLOW__WEBSERVER__WARN_DEPLOYMENT_EXPOSURE

web_server_host

启动 Web 服务器时指定的 IP

类型

字符串

默认值

0.0.0.0

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_HOST

web_server_master_timeout

Web 服务器在杀死不响应的 gunicorn master 之前等待的秒数

类型

字符串

默认值

120

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_MASTER_TIMEOUT

web_server_port

运行 Web 服务器的端口

类型

字符串

默认值

8080

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_PORT

web_server_ssl_cert

Web 服务器的 SSL 证书和密钥的路径。当两者都提供时,将启用 SSL。这不会更改 Web 服务器端口。

类型

字符串

默认值

''

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_SSL_CERT

web_server_ssl_key

Web 服务器的 SSL 证书和密钥的路径。当两者都提供时,将启用 SSL。这不会更改 Web 服务器端口。

类型

字符串

默认值

''

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_SSL_KEY

web_server_worker_timeout

gunicorn Web 服务器在工作进程超时之前等待的秒数

类型

字符串

默认值

120

环境变量

AIRFLOW__WEBSERVER__WEB_SERVER_WORKER_TIMEOUT

worker_class

gunicorn 应使用的工作进程类。选项包括 sync (默认)、eventletgevent

警告

当使用 gevent 时,您可能还需要将 _AIRFLOW_PATCH_GEVENT 环境变量设置为 "1",以确保尽早完成 gevent 补丁。

注意,仅在 Web 服务器上设置 _AIRFLOW_PATCH_GEVENT,因为 gevent 补丁可能会通过 multiprocessing 套接字模块影响调度程序的行为并导致崩溃。

有关更多详细信息,请参阅相关问题/PR

类型

字符串

默认值

sync

环境变量

AIRFLOW__WEBSERVER__WORKER_CLASS

worker_refresh_batch_size

一次刷新的工作进程数。当设置为 0 时,禁用工作进程刷新。当非零时,Airflow 通过启动新进程并杀死旧进程来定期刷新 Web 服务器工作进程。

类型

字符串

默认值

1

环境变量

AIRFLOW__WEBSERVER__WORKER_REFRESH_BATCH_SIZE

worker_refresh_interval

在刷新一批工作进程之前等待的秒数。

类型

字符串

默认值

6000

环境变量

AIRFLOW__WEBSERVER__WORKER_REFRESH_INTERVAL

workers

运行 Gunicorn Web 服务器的工作进程数

类型

字符串

默认值

4

环境变量

AIRFLOW__WEBSERVER__WORKERS

x_frame_enabled

1.10.8 版本新增。

允许在框架中呈现 UI

类型

布尔值

默认值

True

环境变量

AIRFLOW__WEBSERVER__X_FRAME_ENABLED

auth_rate_limit (已弃用)

自 2.9.0 版本起已弃用: 该选项已移至 fab.auth_rate_limit

auth_rate_limited (已弃用)

自 2.9.0 版本起已弃用: 该选项已移至 fab.auth_rate_limited

update_fab_perms (已弃用)

自 2.9.0 版本起已弃用: 该选项已移至 fab.update_fab_perms

此条目是否有帮助?