配置参考¶
本页面包含所有可用的Airflow配置列表,您可以在airflow.cfg文件中或通过环境变量进行设置。
在所有Airflow组件中使用相同的配置。虽然每个组件不需要所有配置,但某些配置必须保持一致,否则它们将无法按预期工作。一个很好的例子是secret_key,它应该在Webserver和Worker上保持一致,以便Webserver能够从Worker获取日志。
webserver密钥还用于在检索日志时授权对Celery工作节点的请求。不过,使用该密钥生成的令牌有效期较短——请确保运行airflow组件的所有机器上的时间保持同步(例如使用ntpd),否则在访问日志时可能会遇到"禁止访问"错误。
注意
更多信息请参阅设置配置选项。
特定提供商的配置选项¶
部分提供程序有自己特定的配置选项,您可以在相应提供程序的文档中找到详细的配置说明。
您可以在特定于提供商包的配置中找到所有提供商的配置
Airflow配置选项¶
[api]¶
access_control_allow_headers¶
在2.1.0版本中新增。
用于响应预检请求,指示在实际请求时可以使用哪些HTTP头部。此头部是服务器对浏览器Access-Control-Request-Headers头部的响应。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__API__ACCESS_CONTROL_ALLOW_HEADERS
access_control_allow_methods¶
在2.1.0版本中新增。
指定访问资源时允许使用的方法。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__API__ACCESS_CONTROL_ALLOW_METHODS
access_control_allow_origins¶
在版本2.2.0中新增。
表示响应是否可以与来自给定来源的请求代码共享。URL之间用空格分隔。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__API__ACCESS_CONTROL_ALLOW_ORIGINS
认证后端¶
在2.3.0版本中新增。
用于API用户身份验证的认证后端列表,以逗号分隔。请参阅 Security: API 查看可能的取值。 (出于历史兼容性考虑,"airflow.api.auth.backend.default"允许所有请求通过)
- Type:
字符串
- Default:
airflow.api.auth.backend.session- Environment Variable:
AIRFLOW__API__AUTH_BACKENDS
enable_experimental_api¶
在2.0.0版本中新增。
启用已弃用的实验性API。请注意,这些API端点没有访问控制。经过身份验证的用户拥有完全访问权限。
警告
这个实验性REST API自2.0版本起已被弃用。建议改用 稳定版REST API。 有关迁移的更多信息,请参阅 RELEASE_NOTES.rst
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__API__ENABLE_EXPERIMENTAL_API
enable_xcom_deserialize_support¶
添加于版本2.7.0。
表示xcomEntries端点是否支持deserialize标志。如果设置为False,在请求中设置此标志将导致400错误请求错误。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__API__ENABLE_XCOM_DESERIALIZE_SUPPORT
fallback_page_limit¶
在2.0.0版本中新增。
用于在API请求中未提供limit参数或该参数值为零时设置默认页面限制。如果API请求中传入的是正整数作为limit,则取用户给定limit与最大页面限制中较小的值作为实际限制。
- Type:
整数
- Default:
100- Environment Variable:
AIRFLOW__API__FALLBACK_PAGE_LIMIT
google_key_path¶
在2.0.0版本中新增。
Google云服务账户密钥文件(JSON)的路径。如果省略,将使用基于应用程序默认凭据的授权方式。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__API__GOOGLE_KEY_PATH- Example:
/files/service-account-json
google_oauth2_audience¶
在2.0.0版本中新增。
用于授权的JWT令牌凭证的目标受众。该值在客户端和服务器端必须匹配。如果为空,则不会检查受众。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__API__GOOGLE_OAUTH2_AUDIENCE- Example:
project-id-random-value.apps.googleusercontent.com
最大页面限制¶
在2.0.0版本中新增。
用于设置API请求的最大页面限制。如果传入的参数限制值大于最大页面限制,该值将被忽略,并使用最大页面限制值作为实际限制
- Type:
整数
- Default:
100- Environment Variable:
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将使用运行在webserver上的API
- Type:
字符串
- Default:
airflow.api.client.local_client- Environment Variable:
AIRFLOW__CLI__API_CLIENT
endpoint_url¶
如果设置了web_server_url_prefix,请务必在此处追加,例如:
endpoint_url = http://localhost:8080/myroot
这样API将显示为:http://localhost:8080/myroot/api/experimental/...
- Type:
字符串
- Default:
http://localhost:8080- Environment Variable:
AIRFLOW__CLI__ENDPOINT_URL
[core]¶
allowed_deserialization_classes¶
于版本2.5.0中新增。
在反序列化过程中可以导入哪些类。这是一个多行值。 各个条目将被解析为glob函数的匹配模式。 Python内置类(如dict)始终允许导入。
- Type:
字符串
- Default:
airflow.*- Environment Variable:
AIRFLOW__CORE__ALLOWED_DESERIALIZATION_CLASSES
允许的反序列化类正则表达式¶
添加于版本2.8.2。
在反序列化过程中可以导入哪些类。这是一个多行值。
各个条目将被解析为正则表达式模式。
这是[core] allowed_deserialization_classes的次要选项。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__CORE__ALLOWED_DESERIALIZATION_CLASSES_REGEXP
auth_manager¶
添加于版本2.7.0。
airflow应使用的认证管理类。认证管理类的完整导入路径。
- Type:
字符串
- Default:
airflow.providers.fab.auth_manager.fab_auth_manager.FabAuthManager- Environment Variable:
AIRFLOW__CORE__AUTH_MANAGER
检查SLA(服务等级协议)¶
在1.10.8版本中新增。
每次dagrun检查定义的SLA
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__CHECK_SLAS
压缩序列化的DAGs¶
在2.3.0版本中新增。
如果True,序列化的DAG在写入数据库前会被压缩。
注意
这将禁用DAG依赖视图
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__CORE__COMPRESS_SERIALIZED_DAGS
守护进程umask¶
添加于版本2.3.4。
在守护进程模式(调度器、工作器等)下运行时使用的默认umask值
这控制文件创建模式掩码,它决定了新创建文件的初始权限位值。
该值被视为八进制整数。
- Type:
字符串
- Default:
0o077- Environment Variable:
AIRFLOW__CORE__DAEMON_UMASK
dag_discovery_safe_mode¶
在1.10.3版本中新增。
如果启用,Airflow将仅扫描同时包含DAG和airflow的文件(不区分大小写)。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__DAG_DISCOVERY_SAFE_MODE
DAG文件处理器超时¶
在版本1.10.6中添加。
在超时处理Dag文件的DagFileProcessor之前需要等待多长时间
- Type:
字符串
- Default:
50- Environment Variable:
AIRFLOW__CORE__DAG_FILE_PROCESSOR_TIMEOUT
dag_ignore_file语法¶
在2.3.0版本中新增。
DAG目录中.airflowignore文件使用的模式语法。有效值为regexp或glob。
- Type:
字符串
- Default:
regexp- Environment Variable:
AIRFLOW__CORE__DAG_IGNORE_FILE_SYNTAX
dag_run_conf覆盖参数¶
是否使用dag_run.conf覆盖参数。如果通过airflow dags backfill -c或
airflow dags trigger -c传递键值对,这些键值对将覆盖params中现有的参数。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__DAG_RUN_CONF_OVERRIDES_PARAMS
dagbag导入错误回溯深度¶
在2.0.0版本中新增。
如果显示回溯信息,应展示回溯中的多少条记录
- Type:
整数
- Default:
2- Environment Variable:
AIRFLOW__CORE__DAGBAG_IMPORT_ERROR_TRACEBACK_DEPTH
dagbag导入错误回溯¶
在2.0.0版本中新增。
是否应在UI中显示dagbag导入错误的回溯信息,而不仅仅是异常消息
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__CORE__DAGBAG_IMPORT_ERROR_TRACEBACKS
dagbag导入超时¶
Python文件导入超时前等待多长时间
- Type:
浮点数
- Default:
30.0- Environment Variable:
AIRFLOW__CORE__DAGBAG_IMPORT_TIMEOUT
DAG在创建时默认暂停¶
DAG在创建时是否默认暂停
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__DAGS_ARE_PAUSED_AT_CREATION
dags文件夹¶
存放您airflow管道的文件夹,通常位于代码仓库的子目录中。该路径必须是绝对路径。
- Type:
字符串
- Default:
{AIRFLOW_HOME}/dags- Environment Variable:
AIRFLOW__CORE__DAGS_FOLDER
数据库访问隔离¶
在2.6.0版本中新增。
(实验性) 组件是否应使用Airflow内部API进行数据库连接。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__CORE__DATABASE_ACCESS_ISOLATION
dataset_manager_class¶
在2.4.0版本中新增。
用作数据集管理器的类。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__CORE__DATASET_MANAGER_CLASS- Example:
airflow.datasets.manager.DatasetManager
dataset_manager_kwargs¶
在2.4.0版本中新增。
提供给数据集管理器的Kwargs参数。
- Type:
字符串
- Default:
None- Environment Variables:
AIRFLOW__CORE__DATASET_MANAGER_KWARGSAIRFLOW__CORE__DATASET_MANAGER_KWARGS_CMDAIRFLOW__CORE__DATASET_MANAGER_KWARGS_SECRET- Example:
{"some_param": "some_value"}
default_impersonation¶
如果设置此项,没有run_as_user参数的任务将以此用户身份运行
可用于在执行任务时降低运行Airflow的sudo用户权限
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__CORE__DEFAULT_IMPERSONATION
default_pool_task_slot_count¶
在版本2.2.0中新增。
任务槽计数针对default_pool。此设置在已创建default_pool的现有部署中将不会产生任何效果。对于现有部署,用户可以通过Web服务器、API或CLI更改槽的数量
- Type:
字符串
- Default:
128- Environment Variable:
AIRFLOW__CORE__DEFAULT_POOL_TASK_SLOT_COUNT
默认任务执行超时¶
在2.3.0版本中新增。
操作符的默认任务执行超时值。预期传入一个整数值作为秒数转换为timedelta。如果未指定,则该值被视为None,意味着默认情况下操作符永远不会超时。
- Type:
整数
- Default:
''- Environment Variable:
AIRFLOW__CORE__DEFAULT_TASK_EXECUTION_TIMEOUT
默认任务重试次数¶
在版本1.10.6中添加。
默认情况下每个任务的重试次数。可以在DAG或任务级别进行覆盖。
- Type:
字符串
- Default:
0- Environment Variable:
AIRFLOW__CORE__DEFAULT_TASK_RETRIES
default_task_retry_delay¶
在2.4.0版本中新增。
每个任务默认在重试之间等待的秒数。可以在DAG或任务级别进行覆盖。
- Type:
整数
- Default:
300- Environment Variable:
AIRFLOW__CORE__DEFAULT_TASK_RETRY_DELAY
default_task_weight_rule¶
在版本2.2.0中新增。
用于计算任务有效总优先级权重的加权方法
- Type:
字符串
- Default:
downstream- Environment Variable:
AIRFLOW__CORE__DEFAULT_TASK_WEIGHT_RULE
默认时区¶
当提供的日期时间为本地时间时使用的默认时区
可以是 UTC (默认)、系统 或任何 IANA
- Type:
字符串
- Default:
utc- Environment Variable:
AIRFLOW__CORE__DEFAULT_TIMEZONE
donot_pickle¶
是否禁用pickling dags
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__DONOT_PICKLE
enable_xcom_pickling¶
是否启用xcom的pickle功能(请注意这是不安全的,可能导致远程代码执行漏洞)。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__CORE__ENABLE_XCOM_PICKLING
在新Python解释器中执行任务¶
在2.0.0版本中新增。
任务是否应该通过父进程的分叉来执行
False: 通过父进程分叉执行True: 生成一个新的python进程,比fork慢,但意味着插件变更会被任务立即获取
另请参阅
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__CORE__EXECUTE_TASKS_NEW_PYTHON_INTERPRETER
执行器¶
airflow应使用的执行器类。可选方案包括
SequentialExecutor, LocalExecutor, CeleryExecutor,
KubernetesExecutor, CeleryKubernetesExecutor, LocalKubernetesExecutor或
使用自定义执行器时的完整类导入路径。
- Type:
字符串
- Default:
SequentialExecutor- Environment Variable:
AIRFLOW__CORE__EXECUTOR
fernet_key¶
用于在数据库中保存连接密码的密钥
- Type:
字符串
- Default:
{FERNET_KEY}- Environment Variables:
AIRFLOW__CORE__FERNET_KEYAIRFLOW__CORE__FERNET_KEY_CMDAIRFLOW__CORE__FERNET_KEY_SECRET
隐藏敏感变量和连接字段¶
在2.1.0版本中新增。
在UI界面和任务日志中隐藏敏感的变量或连接额外JSON键,当设置为True时
注意
连接密码在日志中始终会被隐藏
- Type:
布尔值
- Default:
True- Environment Variable:
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
- Type:
字符串
- Default:
airflow.utils.net.getfqdn- Environment Variable:
AIRFLOW__CORE__HOSTNAME_CALLABLE
internal_api_secret_key¶
在2.10.0版本中新增。
用于验证内部API客户端与核心服务的密钥。应尽可能随机生成。
然而,当运行多个webserver/internal API服务实例时,请确保所有实例使用相同的secret_key,否则调用会在身份验证时失败。
请注意,使用该密钥生成的身份验证令牌有效期较短 - 必须确保运行airflow组件的所有机器时间同步
(例如使用ntpd服务),否则在访问日志时可能会出现"禁止访问"错误。
- Type:
字符串
- Default:
{SECRET_KEY}- Environment Variables:
AIRFLOW__CORE__INTERNAL_API_SECRET_KEYAIRFLOW__CORE__INTERNAL_API_SECRET_KEY_CMDAIRFLOW__CORE__INTERNAL_API_SECRET_KEY_SECRET
internal_api_url¶
在2.6.0版本中新增。
(实验性功能) Airflow内部API地址。
仅在[core] database_access_isolation设置为True时使用。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__CORE__INTERNAL_API_URL- Example:
http://localhost:8080
killed_task_cleanup_time¶
当一个任务被强制终止时,这是在发送SIGTERM信号后,任务在被SIGKILL之前用于清理的时间(以秒为单位)
- Type:
字符串
- Default:
60- Environment Variable:
AIRFLOW__CORE__KILLED_TASK_CLEANUP_TIME
延迟发现提供者¶
在2.0.0版本中新增。
默认情况下,Airflow providers 是懒加载的(仅在需要时进行发现和导入)。
如果希望在通过命令行调用 'airflow' 或从模块加载时立即发现 providers,请将其设置为 False。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__CORE__LAZY_DISCOVER_PROVIDERS
延迟加载插件¶
在2.0.0版本中新增。
默认情况下,Airflow插件是懒加载的(仅在需要时加载)。如果你想在通过命令行调用'airflow'或从模块加载时立即加载插件,请将其设置为False。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__CORE__LAZY_LOAD_PLUGINS
加载示例¶
是否加载Airflow自带的DAG示例。这对入门很有帮助,但在生产环境中你可能想将其设为False
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__CORE__LOAD_EXAMPLES
每个DAG的最大活跃运行数¶
每个DAG的最大活跃DAG运行数量。当达到该限制时,调度器将不再创建更多DAG运行。这可以通过DAG级别的max_active_runs参数进行配置,该参数默认为[core] max_active_runs_per_dag。
- Type:
字符串
- Default:
16- Environment Variable:
AIRFLOW__CORE__MAX_ACTIVE_RUNS_PER_DAG
每个DAG的最大活跃任务数¶
在版本2.2.0中新增。
每个DAG中允许并发运行的最大任务实例数。要计算DAG当前并发运行的任务数,需要将该DAG所有运行中的任务数相加。这可以通过DAG级别的max_active_tasks参数进行配置,默认值为[core] max_active_tasks_per_dag。
一个适用此场景的例子是,当您希望阻止一个具有较早开始日期的新DAG抢占集群中所有执行器槽位时。
- Type:
字符串
- Default:
16- Environment Variable:
AIRFLOW__CORE__MAX_ACTIVE_TASKS_PER_DAG
每个DAG的最大连续失败运行次数¶
在2.9.0版本中新增。
(实验性功能) DAG在自动暂停前允许的最大连续失败次数。
该参数也可以在单个DAG级别通过max_consecutive_failed_dag_runs进行配置,
默认值为[core] max_consecutive_failed_dag_runs_per_dag。
如果未指定,则该值被视为0,
意味着默认情况下DAG永远不会被自动暂停。
- Type:
字符串
- Default:
0- Environment Variable:
AIRFLOW__CORE__MAX_CONSECUTIVE_FAILED_DAG_RUNS_PER_DAG
最大映射长度¶
在2.3.0版本中新增。
XCom可以推送用于触发任务映射的最大列表/字典长度。如果推送的列表/字典长度超过此值,推送XCom的任务将自动失败,以防止映射任务阻塞调度器。
- Type:
整数
- Default:
1024- Environment Variable:
AIRFLOW__CORE__MAX_MAP_LENGTH
每个任务最大渲染的任务实例字段数¶
在版本1.10.10中新增。
存储在数据库中的每个任务的最大渲染任务实例字段数(模板字段)。
所有任务实例的template_fields都存储在数据库中。
如果将此数值设置过小,在查看较旧任务的TaskInstance视图中的Rendered标签页时可能会导致错误。
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__CORE__MAX_NUM_RENDERED_TI_FIELDS_PER_TASK
max_task_retry_delay¶
在2.6.0版本中新增。
默认情况下,每个任务在重试之间的最大等待延迟(以秒为单位)。 这是一个全局设置,无法在任务或DAG级别覆盖。
- Type:
整数
- Default:
86400- Environment Variable:
AIRFLOW__CORE__MAX_TASK_RETRY_DELAY
最大模板字段长度¶
在2.9.0版本中新增。
渲染模板字段的最大长度。如果要存储在渲染模板字段中的值超过此大小,则会被编辑处理。
- Type:
整数
- Default:
4096- Environment Variable:
AIRFLOW__CORE__MAX_TEMPLATED_FIELD_LENGTH
might_contain_dag_callable¶
在2.6.0版本中新增。
一个可调用对象,用于检查Python文件是否定义了airflow dags,如果包含dags则应返回True,否则返回False。
如果未提供此参数,Airflow将使用其自身的启发式规则。
该函数应具有以下签名
def func_name(file_path: str, zip_file: zipfile.ZipFile | None = None) -> bool: ...
- Type:
字符串
- Default:
airflow.utils.file.might_contain_dag_via_default_heuristic- Environment Variable:
AIRFLOW__CORE__MIGHT_CONTAIN_DAG_CALLABLE
最小序列化DAG获取间隔¶
在版本1.10.12中新增。
获取序列化DAG的速度不能快于最小间隔,以降低数据库读取频率。此配置控制DAG在Webserver中的更新时机
- Type:
字符串
- Default:
10- Environment Variable:
AIRFLOW__CORE__MIN_SERIALIZED_DAG_FETCH_INTERVAL
最小序列化DAG更新间隔¶
在版本1.10.7中添加。
更新序列化DAG的最小间隔不能设置过短,以降低数据库写入频率。
- Type:
字符串
- Default:
30- Environment Variable:
AIRFLOW__CORE__MIN_SERIALIZED_DAG_UPDATE_INTERVAL
mp_start_method¶
在2.0.0版本中新增。
用于通过multiprocessing模块启动Python进程的方法名称。 这直接对应于Python文档中可用的选项: multiprocessing.set_start_method 必须是multiprocessing.get_all_start_methods()返回的值之一。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__CORE__MP_START_METHOD- Example:
fork
并行度¶
这定义了在Airflow中每个调度器可以并发运行的最大任务实例数,与工作节点数量无关。通常该值乘以集群中的调度器数量,即为元数据数据库中处于运行状态的任务实例的最大数量。将此值设置为零表示允许无限并行。
- Type:
字符串
- Default:
32- Environment Variable:
AIRFLOW__CORE__PARALLELISM
plugins_folder¶
包含Airflow插件的文件夹路径
- Type:
字符串
- Default:
{AIRFLOW_HOME}/plugins- Environment Variable:
AIRFLOW__CORE__PLUGINS_FOLDER
安全¶
使用哪种安全模块(例如kerberos)
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__CORE__SECURITY
敏感变量连接名称¶
在2.1.0版本中新增。
一个逗号分隔的敏感关键词列表,用于在变量名或连接的额外JSON中查找。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__CORE__SENSITIVE_VAR_CONN_NAMES
strict_dataset_uri_validation¶
在2.9.2版本中新增。
如果数据集URI不符合AIP-60规范,验证过程应该抛出异常。 默认情况下该配置为false,意味着Airflow 2.x仅会向用户发出警告。 在Airflow 3中,该配置将被移除,无条件启用严格验证。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__CORE__STRICT_DATASET_URI_VALIDATION
任务运行器¶
用于在子进程中运行任务实例的类。 选项包括StandardTaskRunner、CgroupTaskRunner或使用自定义任务运行器时的完整类导入路径。
- Type:
字符串
- Default:
StandardTaskRunner- Environment Variable:
AIRFLOW__CORE__TASK_RUNNER
任务成功超时¶
在2.10.0版本中新增。
任务在被标记为成功之后,执行辅助进程(如监听器、迷你调度器等)的最大可能时间(以秒为单位)。
- Type:
整数
- Default:
20- Environment Variable:
AIRFLOW__CORE__TASK_SUCCESS_OVERTIME
测试连接¶
添加于版本2.7.0。
允许通过Airflow UI、API和CLI测试连接的功能。
支持的选项:Disabled, Enabled, Hidden。默认值:Disabled
Disabled - 禁用测试连接功能,并在UI中隐藏"测试连接"按钮。
Enabled - 启用测试连接功能,并在UI中显示"测试连接"按钮。
Hidden - 禁用测试连接功能,并在UI中隐藏"测试连接"按钮。
在将此选项设置为Enabled之前,请确保审查能够添加/编辑连接的用户并确认他们是可信的。恶意进行连接测试可能导致不期望和不安全的结果。
更多详情请参阅Airflow安全模型:认证UI用户的能力。
- Type:
字符串
- Default:
已禁用- Environment Variable:
AIRFLOW__CORE__TEST_CONNECTION
单元测试模式¶
开启单元测试模式(在运行时用测试值覆盖许多配置选项)
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__CORE__UNIT_TEST_MODE
xcom_backend¶
在版本1.10.12中新增。
自定义XCom类的路径,用于存储和解析操作符结果
- Type:
字符串
- Default:
airflow.models.xcom.BaseXCom- Environment Variable:
AIRFLOW__CORE__XCOM_BACKEND- Example:
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主目录的文件路径,如果文件位于其他位置,也可以提供绝对路径。
- Type:
字符串
- Default:
alembic.ini- Environment Variable:
AIRFLOW__DATABASE__ALEMBIC_INI_FILE_PATH
检查迁移¶
在2.6.0版本中新增。
是否在Airflow启动时运行alembic迁移。有时此操作可能很耗时,用户可以通过其他方式(例如通过Helm chart)确认正确版本。接受True或False。
- Type:
字符串
- Default:
True- Environment Variable:
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 migrate和
airflow connections create-default-connections,且load_default_connections参数
已不再被这些新命令使用。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__DATABASE__LOAD_DEFAULT_CONNECTIONS
max_db_retries¶
在2.3.0版本中新增。
在数据库操作错误时应重试代码的次数。
并非所有事务都会被重试,因为这可能导致意外状态。
目前仅用于DagFileProcessor.process_file中重试dagbag.sync_to_db。
- Type:
整数
- Default:
3- Environment Variable:
AIRFLOW__DATABASE__MAX_DB_RETRIES
sql_alchemy_conn¶
在2.3.0版本中新增。
连接到元数据数据库的SQLAlchemy连接字符串。 SQLAlchemy支持多种不同的数据库引擎。 详情请参阅:设置数据库后端:数据库URI
- Type:
字符串
- Default:
sqlite:///{AIRFLOW_HOME}/airflow.db- Environment Variables:
AIRFLOW__DATABASE__SQL_ALCHEMY_CONNAIRFLOW__DATABASE__SQL_ALCHEMY_CONN_CMDAIRFLOW__DATABASE__SQL_ALCHEMY_CONN_SECRET
sql_alchemy_连接参数¶
在2.3.0版本中新增。
SQLAlchemy中连接参数的导入路径。默认为空字典。
当您需要配置SQLAlchemy无法在连接字符串中解析的数据库引擎参数时,这非常有用。
可以通过传递包含创建引擎参数的字典来设置此选项。
有关在PostgreSQL数据库后端传递创建引擎参数(如keepalives变量、超时等)的更多详情,
请参阅设置PostgreSQL数据库。
例如,connect_args={"timeout":30}可以在airflow_local_settings.py中定义,
并可以按如下方式导入
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_CONNECT_ARGS- Example:
airflow_local_settings.connect_args
sql_alchemy_引擎参数¶
在2.3.0版本中新增。
传递给SQLAlchemy的create_engine的额外引擎特定关键字参数,以JSON编码值的形式
- Type:
字符串
- Default:
None- Environment Variables:
AIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGSAIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGS_CMDAIRFLOW__DATABASE__SQL_ALCHEMY_ENGINE_ARGS_SECRET- Example:
{"arg1": true}
sql_alchemy_max_overflow¶
在2.3.0版本中新增。
连接池的最大溢出容量。
当被取出的连接数达到pool_size设置的大小时,
额外的连接将被允许创建直至达到此限制。
当这些额外连接归还到连接池时,它们会被断开并丢弃。
因此连接池允许的最大并发连接数为pool_size + max_overflow,
而连接池允许的"休眠"连接总数始终为pool_size。
max_overflow可设置为-1表示无溢出限制;
此时不会对并发连接总数施加任何限制。默认为10。
- Type:
字符串
- Default:
10- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_MAX_OVERFLOW
sql_alchemy_pool_enabled¶
在2.3.0版本中新增。
SQLAlchemy是否应该使用数据库连接池。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_ENABLED
sql_alchemy_pool_pre_ping¶
在2.3.0版本中新增。
在每次连接池检出时检查连接。 通常,这是一个简单的语句,如“SELECT 1”。 详情请参阅SQLAlchemy Pooling: Disconnect Handling - Pessimistic
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_PRE_PING
sql_alchemy_pool_recycle¶
在2.3.0版本中新增。
SQLAlchemy连接池回收时间是指连接在池中闲置多少秒后会被置为无效。此配置不适用于sqlite。如果数据库连接数超出限制,较低的配置值可使系统更快恢复。
- Type:
字符串
- Default:
1800- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_RECYCLE
sql_alchemy_pool_size¶
在2.3.0版本中新增。
SQLAlchemy连接池大小是指池中数据库连接的最大数量。0表示无限制。
- Type:
字符串
- Default:
5- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_POOL_SIZE
sql_alchemy_schema¶
在2.3.0版本中新增。
用于元数据数据库的模式。 SQLAlchemy支持具有多模式概念的数据库。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_SCHEMA
sql_alchemy_session_maker¶
在2.9.4版本中新增。
重要警告:强烈不建议使用sql_alchemy_session_maker 该函数返回'sqlalchemy.orm.sessionmaker'的导入路径。 sql_alchemy_session_maker配置不当可能导致严重问题, 包括数据损坏、不可恢复的应用程序崩溃。请查阅SQLAlchemy 文档获取正确配置和最佳实践的详细指导。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__DATABASE__SQL_ALCHEMY_SESSION_MAKER- Example:
airflow_local_settings._sessionmaker
sql_engine_collation_for_ids¶
在2.3.0版本中新增。
针对dag_id、task_id、key、external_executor_id列的排序规则设置,
用于处理这些列可能存在的不同编码情况。
默认情况下,该排序规则与数据库排序规则相同,但对于mysql和mariadb数据库,
默认设置为utf8mb3_bin,以确保当排序规则设置为utf8mb4变体时,
我们的索引键大小不会超过允许的最大索引尺寸。
更多详情请参阅GitHub Issue Comment。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__DATABASE__SQL_ENGINE_COLLATION_FOR_IDS
sql_engine_编码¶
在2.3.0版本中新增。
数据库的编码
- Type:
字符串
- Default:
utf-8- Environment Variable:
AIRFLOW__DATABASE__SQL_ENGINE_ENCODING
[调试]¶
快速失败¶
在1.10.8版本中新增。
仅与DebugExecutor配合使用。如果设置为True,DAG将在第一个任务失败时立即失败。有助于调试目的。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__DEBUG__FAIL_FAST
[email]¶
配置邮件后端以及是否在重试或失败时发送邮件警报
默认失败邮件通知¶
在2.0.0版本中新增。
当任务失败时是否应发送电子邮件警报
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__EMAIL__DEFAULT_EMAIL_ON_FAILURE
默认重试邮件¶
在2.0.0版本中新增。
当任务重试时是否应发送电子邮件警报
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__EMAIL__DEFAULT_EMAIL_ON_RETRY
email_backend¶
使用的电子邮件后端
- Type:
字符串
- Default:
airflow.utils.email.send_email_smtp- Environment Variable:
AIRFLOW__EMAIL__EMAIL_BACKEND
email_conn_id¶
在2.1.0版本中新增。
使用的邮件连接
- Type:
字符串
- Default:
smtp_default- Environment Variable:
AIRFLOW__EMAIL__EMAIL_CONN_ID
发件邮箱¶
添加于版本2.2.4。
将用作发件人地址的电子邮件地址。
可以是原始电子邮件地址,也可以是完整格式的地址:Sender Name
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__EMAIL__FROM_EMAIL- Example:
Airflow
html_content_template¶
在版本2.0.1中新增。
将用作电子邮件内容模板的文件(使用Jinja2渲染)。 如果未设置,Airflow会使用基础模板。
另请参阅
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__EMAIL__HTML_CONTENT_TEMPLATE- Example:
/path/to/my_html_content_template_file
ssl_context¶
添加于版本2.7.0。
在使用SMTP和IMAP SSL连接时使用的SSL上下文。默认情况下,上下文为"default",即设置为ssl.create_default_context(),这提供了兼容性和安全性之间的适当平衡,但要求操作系统中的证书已更新,并且您的SMTP/IMAP服务器具有安装了相应公钥的有效证书。如果您想禁用证书检查,可以将其切换为"none",但不建议这样做,因为如果基础设施未得到充分保护,这将允许中间人攻击。仅应在修复证书配置时临时设置此选项。通常可以通过升级运行Airflow组件的操作系统版本、在操作系统中升级/更新适当的证书或更新邮件服务器的证书来完成此操作。
- Type:
字符串
- Default:
default- Environment Variable:
AIRFLOW__EMAIL__SSL_CONTEXT- Example:
default
subject_template¶
在版本2.0.1中新增。
将用作电子邮件主题模板的文件(使用Jinja2渲染)。 如果未设置,Airflow会使用基础模板。
另请参阅
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__EMAIL__SUBJECT_TEMPLATE- Example:
/path/to/my_subject_template_file
[kerberos]¶
ccache¶
执行kinit后,您的ccache文件的位置。
- Type:
字符串
- Default:
/tmp/airflow_krb5_ccache- Environment Variable:
AIRFLOW__KERBEROS__CCACHE
可转发¶
在版本2.2.0中新增。
允许禁用票据的可转发性。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__KERBEROS__FORWARDABLE
include_ip¶
在版本2.2.0中新增。
允许从令牌中移除源IP,在使用NAT转发的Docker主机后使用令牌时很有用。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__KERBEROS__INCLUDE_IP
keytab¶
指定Airflow用户的Kerberos密钥表文件路径
- Type:
字符串
- Default:
airflow.keytab- Environment Variable:
AIRFLOW__KERBEROS__KEYTAB
kinit路径¶
kinit可执行文件的路径
- Type:
字符串
- Default:
kinit- Environment Variable:
AIRFLOW__KERBEROS__KINIT_PATH
负责人¶
获取增强的完全限定域名
- Type:
字符串
- Default:
airflow- Environment Variable:
AIRFLOW__KERBEROS__PRINCIPAL
重新初始化频率¶
决定初始化或重新初始化流程发生的频率。
- Type:
字符串
- Default:
3600- Environment Variable:
AIRFLOW__KERBEROS__REINIT_FREQUENCY
[血缘关系]¶
后端¶
使用何种血缘关系后端
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LINEAGE__BACKEND
[日志记录]¶
基础日志文件夹¶
在2.0.0版本中新增。
Airflow存储其日志文件的文件夹路径。
该路径必须是绝对路径。
现有部分配置默认使用该路径。
如果选择覆盖此设置,可能还需要更新
[logging] dag_processor_manager_log_location 和
[logging] child_process_log_directory settings 配置项。
- Type:
字符串
- Default:
{AIRFLOW_HOME}/logs- Environment Variable:
AIRFLOW__LOGGING__BASE_LOG_FOLDER
celery_logging_level¶
在2.3.0版本中新增。
Celery的日志记录级别。如果未设置,则使用logging_level的值
支持的取值:CRITICAL, ERROR, WARNING, INFO, DEBUG.
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__CELERY_LOGGING_LEVEL
celery_stdout_stderr_separation¶
添加于版本2.7.0。
默认情况下,Celery会将所有日志发送到标准错误输出(stderr)。 如果启用此选项,任何先前的日志处理程序将被移除。 通过此设置,AirFlow将创建新的处理程序, 将低级别日志(如INFO和WARNING)发送到标准输出(stdout), 同时将更高级别的日志发送到标准错误输出(stderr)。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__LOGGING__CELERY_STDOUT_STDERR_SEPARATION
color_log_error_keywords¶
在2.10.0版本中新增。
一个逗号分隔的关键词列表,这些关键词与错误相关,当它们出现时会在UI界面中以红色显示该行
- Type:
字符串
- Default:
error,exception- Environment Variable:
AIRFLOW__LOGGING__COLOR_LOG_ERROR_KEYWORDS
color_log_warning_keywords¶
在2.10.0版本中新增。
一个逗号分隔的关键词列表,与警告相关,当这些关键词出现时,UI中对应的行会显示为黄色
- Type:
字符串
- Default:
警告- Environment Variable:
AIRFLOW__LOGGING__COLOR_LOG_WARNING_KEYWORDS
彩色控制台日志¶
在2.0.0版本中新增。
控制台彩色日志启用/禁用标志 当控制终端为TTY时,为日志着色。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__LOGGING__COLORED_CONSOLE_LOG
colored_formatter_class¶
在2.0.0版本中新增。
指定Airflow用于实现彩色日志记录的类
- Type:
字符串
- Default:
airflow.utils.log.colored_log.CustomTTYColoredFormatter- Environment Variable:
AIRFLOW__LOGGING__COLORED_FORMATTER_CLASS
colored_log_format¶
在2.0.0版本中新增。
启用彩色日志时的日志格式
- Type:
字符串
- Default:
[%%(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- Environment Variable:
AIRFLOW__LOGGING__COLORED_LOG_FORMAT
dag_processor日志格式¶
在2.4.0版本中新增。
Dag处理器日志行的格式
- Type:
字符串
- Default:
[%%(asctime)s] [SOURCE:DAG_PROCESSOR] {%%(filename)s:%%(lineno)d} %%(levelname)s - %%(message)s- Environment Variable:
AIRFLOW__LOGGING__DAG_PROCESSOR_LOG_FORMAT
DAG处理器日志目标¶
在2.4.0版本中新增。
将DAG解析日志发送到何处。如果选择"file",日志将被发送到由child_process_log_directory定义的日志文件。
- Type:
字符串
- Default:
file- Environment Variable:
AIRFLOW__LOGGING__DAG_PROCESSOR_LOG_TARGET
DAG处理器管理器日志位置¶
在2.0.0版本中新增。
dag_processor_manager日志文件的完整路径。
- Type:
字符串
- Default:
{AIRFLOW_HOME}/logs/dag_processor_manager/dag_processor_manager.log- Environment Variable:
AIRFLOW__LOGGING__DAG_PROCESSOR_MANAGER_LOG_LOCATION
DAG处理器管理器日志标准输出¶
在2.9.0版本中新增。
DAG处理器管理器是否会将日志写入标准输出
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__LOGGING__DAG_PROCESSOR_MANAGER_LOG_STDOUT
删除本地日志¶
在2.6.0版本中新增。
GCS、S3、WASB和OSS远程日志记录的本机日志文件在上传到远程位置后是否应该被删除。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__LOGGING__DELETE_LOCAL_LOGS
启用任务上下文日志记录器¶
添加于版本2.8.0。
如果启用,Airflow可能会从任务运行上下文之外(例如调度器、执行器或回调执行上下文)向任务日志发送消息。这在某些情况下会有所帮助,例如当有东西阻塞任务执行时,通常可能完全没有任务日志。
默认设置为True。如果您遇到此功能的问题(例如调度器性能问题),可以禁用它。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__LOGGING__ENABLE_TASK_CONTEXT_LOGGER
加密S3日志¶
在2.0.0版本中新增。
对存储在S3中的日志使用服务器端加密
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__LOGGING__ENCRYPT_S3_LOGS
额外日志记录器名称¶
在2.0.0版本中新增。
一个逗号分隔的第三方日志记录器名称列表,这些日志记录器将被配置为向控制台打印消息。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__EXTRA_LOGGER_NAMES- Example:
connexion,sqlalchemy
fab_logging_level¶
在2.0.0版本中新增。
Flask-appbuilder UI的日志记录级别。
支持的取值:CRITICAL, ERROR, WARNING, INFO, DEBUG.
- Type:
字符串
- Default:
警告- Environment Variable:
AIRFLOW__LOGGING__FAB_LOGGING_LEVEL
file_task_handler_new_file_permissions¶
在2.6.0版本中新增。
权限以八进制字符串形式表示,如同chmod命令所理解的格式。当使用模拟用户功能时,这些权限尤为重要,因为日志可能由与airflow不同的用户写入。这种情况下最安全的配置方式是:将两个用户都加入同一个组,并将该组设为两个用户的默认组。在airflow中,默认情况下日志是组可写的,但您可能认为允许其他用户写入日志也可以接受,此时应将其设置为0o666。如果不使用模拟用户功能,您可能决定增加安全性,将其改为0o644使其仅所有者可写。如果所有日志访问(读/写)都来自同一用户,您还可以将其改为0o600,使其仅所有者可读。
- Type:
字符串
- Default:
0o664- Environment Variable:
AIRFLOW__LOGGING__FILE_TASK_HANDLER_NEW_FILE_PERMISSIONS- Example:
0o664
file_task_handler_new_folder_permissions¶
在2.6.0版本中新增。
权限以八进制字符串形式表示,如chmod所理解的。当您使用模拟用户时,或者当日志由与airflow不同的用户写入时,这些权限非常重要。在这种情况下,最安全的配置方式是将两个用户都添加到同一个组,并使其成为两个用户的默认组。在airflow中,默认情况下日志是组可写的,但您可能认为允许其他用户写入日志也可以接受,在这种情况下,您应该将其设置为0o777。如果您不使用模拟用户,可以增加安全性,将其更改为0o755,使其仅所有者可写。如果您的所有日志访问(读/写)都来自同一用户,您还可以通过将其更改为0o700,使其仅所有者可读。
- Type:
字符串
- Default:
0o775- Environment Variable:
AIRFLOW__LOGGING__FILE_TASK_HANDLER_NEW_FOLDER_PERMISSIONS- Example:
0o775
google_key_path¶
在2.0.0版本中新增。
Google凭证JSON文件的路径。如果省略,将使用基于应用程序默认凭证的授权。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__GOOGLE_KEY_PATH
交错时间戳解析器¶
在2.6.0版本中新增。
我们必须解析时间戳以交错触发器与任务之间的日志。为此,我们需要解析日志文件中的时间戳。如果您的日志格式是非标准的,您可以提供一个可调用对象的导入路径,该对象接收字符串形式的日志行并返回时间戳(与datetime.datetime兼容)。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__LOGGING__INTERLEAVE_TIMESTAMP_PARSER- Example:
path.to.my_func
日志文件名模板¶
在2.0.0版本中新增。
格式化airflow如何为每个任务运行生成文件名/路径。
- Type:
字符串
- Default:
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- Environment Variable:
AIRFLOW__LOGGING__LOG_FILENAME_TEMPLATE
日志格式¶
在2.0.0版本中新增。
日志行格式
- Type:
字符串
- Default:
[%%(asctime)s] {%%(filename)s:%%(lineno)d} %%(levelname)s - %%(message)s- Environment Variable:
AIRFLOW__LOGGING__LOG_FORMAT
log_formatter_class¶
添加于版本2.3.4。
决定Airflow用于构建日志消息的格式化类 默认的格式化类支持时区感知,这意味着附加在日志条目上的时间戳 将被调整以反映Airflow实例的本地时区
- Type:
字符串
- Default:
airflow.utils.log.timezone_aware.TimezoneAware- Environment Variable:
AIRFLOW__LOGGING__LOG_FORMATTER_CLASS
日志处理器文件名模板¶
在2.0.0版本中新增。
关于airflow如何生成日志文件名的格式
- Type:
字符串
- Default:
{ filename }.log- Environment Variable:
AIRFLOW__LOGGING__LOG_PROCESSOR_FILENAME_TEMPLATE
logging_config_class¶
在2.0.0版本中新增。
日志记录类 指定将用于配置日志记录的类 该类必须位于python类路径中
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__LOGGING_CONFIG_CLASS- Example:
my.path.default_local_settings.LOGGING_CONFIG
日志级别¶
在2.0.0版本中新增。
日志记录级别。
支持的取值:CRITICAL, ERROR, WARNING, INFO, DEBUG.
- Type:
字符串
- Default:
信息- Environment Variable:
AIRFLOW__LOGGING__LOGGING_LEVEL
remote_base_log_folder¶
在2.0.0版本中新增。
远程日志存储桶URL S3存储桶应以s3://开头 Cloudwatch日志组应以cloudwatch://开头 GCS存储桶应以gs://开头 WASB存储桶应以wasb开头以便帮助Airflow选择正确的处理器 Stackdriver日志应以stackdriver://开头
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__REMOTE_BASE_LOG_FOLDER
remote_log_conn_id¶
在2.0.0版本中新增。
用户必须提供一个Airflow连接ID,该ID提供对存储位置的访问权限。根据您的远程日志服务,这可能仅用于读取日志,而非写入日志。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__REMOTE_LOG_CONN_ID
远程日志记录¶
在2.0.0版本中新增。
Airflow可以将日志远程存储在AWS S3、Google云存储或Elastic Search中。
如果要启用远程日志记录,请将此设置为True。
- Type:
字符串
- Default:
False- Environment Variable:
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},那么本地日志文件在上传到远程位置后仍会被删除。
- Type:
字符串
- Default:
''- Environment Variables:
AIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGSAIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGS_CMDAIRFLOW__LOGGING__REMOTE_TASK_HANDLER_KWARGS_SECRET- Example:
{"delete_local_copy": true}
secret_mask_adapter¶
在2.6.0版本中新增。
一个导入路径,指向用于添加每个通过airflow.utils.log.secrets_masker.mask_secret添加的密钥适配的函数,这些适配将在日志消息中被屏蔽。给定的函数预期需要单个参数:待适配的密钥。它可以返回密钥的单个适配或可迭代的多个适配,每个都将作为密钥被屏蔽。原始密钥以及返回的任何适配都将被屏蔽。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__SECRET_MASK_ADAPTER- Example:
urllib.parse.quote
simple_log_format¶
在2.0.0版本中新增。
定义简单日志配置中日志消息的格式
- Type:
字符串
- Default:
%%(asctime)s %%(levelname)s - %%(message)s- Environment Variable:
AIRFLOW__LOGGING__SIMPLE_LOG_FORMAT
task_log_prefix_template¶
在2.0.0版本中新增。
按照如下方式指定带有流处理程序的前缀模式 TaskHandlerWithCustomFormatter
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__LOGGING__TASK_LOG_PREFIX_TEMPLATE- Example:
{ti.dag_id}-{ti.task_id}-{execution_date}-{ti.try_number}
任务日志读取器¶
在2.0.0版本中新增。
用于读取任务实例日志的处理程序名称。
默认为使用task处理程序。
- Type:
字符串
- Default:
task- Environment Variable:
AIRFLOW__LOGGING__TASK_LOG_READER
trigger_log_server_port¶
在2.6.0版本中新增。
用于触发器提供日志服务的端口。
更多信息请参见[logging] worker_log_server_port的描述。
- Type:
字符串
- Default:
8794- Environment Variable:
AIRFLOW__LOGGING__TRIGGER_LOG_SERVER_PORT
worker日志服务器端口¶
在版本2.2.0中新增。
当你启动一个Airflow worker时,Airflow会启动一个微型web服务器子进程,用于向airflow主web服务器提供worker的本地日志文件,主服务器随后构建页面并发送给用户。这里定义了日志服务的端口号。该端口必须未被占用,并且主web服务器能够访问该端口以连接到workers。
- Type:
字符串
- Default:
8793- Environment Variable:
AIRFLOW__LOGGING__WORKER_LOG_SERVER_PORT
[指标]¶
StatsD 集成设置。
metrics_allow_list¶
在2.6.0版本中新增。
配置一个允许列表(逗号分隔的字符串)以仅发送特定指标。
如果 [metrics] metrics_use_pattern_match 为 false,则仅匹配精确的指标名前缀。
如果 [metrics] metrics_use_pattern_match 为 true,则提供正则表达式模式进行匹配。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__METRICS__METRICS_ALLOW_LIST- Example:
"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_match 设为 false,则仅匹配精确的指标名前缀。
如果 [metrics] metrics_use_pattern_match 为 true,请提供匹配的正则表达式模式。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__METRICS__METRICS_BLOCK_LIST- Example:
"scheduler,executor,dagrun,pool,triggerer,celery" 或 "^scheduler,^executor,heartbeat|timeout"
metrics_use_pattern_match¶
在2.9.0版本中新增。
如果为真,[metrics] metrics_allow_list 和 [metrics] metrics_block_list 将在指标名称的任何位置使用正则表达式模式匹配,而不仅限于名称开头的前缀匹配。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__METRICS__METRICS_USE_PATTERN_MATCH
otel_debugging_on¶
添加于版本2.7.0。
如果 True,所有指标也会输出到控制台。默认为 False。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__METRICS__OTEL_DEBUGGING_ON
otel_host¶
在2.6.0版本中新增。
指定Airflow发送指标和追踪数据的OpenTelemetry Collector的主机名或IP地址。
- Type:
字符串
- Default:
localhost- Environment Variable:
AIRFLOW__METRICS__OTEL_HOST
otel_interval_milliseconds¶
在2.6.0版本中新增。
定义Airflow向配置的OpenTelemetry Collector发送指标和跟踪批次的间隔时间(以毫秒为单位)。
- Type:
整数
- Default:
60000- Environment Variable:
AIRFLOW__METRICS__OTEL_INTERVAL_MILLISECONDS
otel开启¶
在2.6.0版本中新增。
支持将指标发送到OpenTelemetry。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__METRICS__OTEL_ON
otel_port¶
在2.6.0版本中新增。
指定正在监听的OpenTelemetry Collector端口。
- Type:
字符串
- Default:
8889- Environment Variable:
AIRFLOW__METRICS__OTEL_PORT
otel前缀¶
在2.6.0版本中新增。
Airflow指标的前缀。
- Type:
字符串
- Default:
airflow- Environment Variable:
AIRFLOW__METRICS__OTEL_PREFIX
otel_service¶
在2.10.3版本中新增。
追踪的默认服务名称。
- Type:
字符串
- Default:
Airflow- Environment Variable:
AIRFLOW__METRICS__OTEL_SERVICE
otel_ssl_active¶
添加于版本2.7.0。
如果 True,将启用SSL。默认为 False。
要与OpenTelemetry收集器建立HTTPS连接,
您需要在OpenTelemetry收集器的 config.yml 文件中配置SSL证书和密钥。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__METRICS__OTEL_SSL_ACTIVE
stat_name_handler¶
在2.0.0版本中新增。
一个用于验证StatsD统计名称的函数,必要时会对统计名称进行修改并返回转换后的统计名称。
该函数应具有以下签名
def func_name(stat_name: str) -> str: ...
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__METRICS__STAT_NAME_HANDLER
statsd_custom_client_path¶
在2.0.0版本中新增。
If you want to utilise your own custom StatsD client set the relevant
module path below.
Note: The module path must exist on your
PYTHONPATH
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__METRICS__STATSD_CUSTOM_CLIENT_PATH
statsd_datadog_enabled¶
在2.0.0版本中新增。
启用Datadog集成以发送airflow指标。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__METRICS__STATSD_DATADOG_ENABLED
statsd主机¶
在2.0.0版本中新增。
指定运行StatsD守护进程(或服务器)的主机地址
- Type:
字符串
- Default:
localhost- Environment Variable:
AIRFLOW__METRICS__STATSD_HOST
statsd_influxdb_enabled¶
在2.6.0版本中新增。
启用通过StatsD-Influxdb标签约定发送Airflow指标的功能。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__METRICS__STATSD_INFLUXDB_ENABLED
statsd开启¶
在2.0.0版本中新增。
支持将指标发送到StatsD。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__METRICS__STATSD_ON
statsd端口¶
在2.0.0版本中新增。
指定StatsD守护进程(或服务器)监听的端口
- Type:
字符串
- Default:
8125- Environment Variable:
AIRFLOW__METRICS__STATSD_PORT
statsd前缀¶
在2.0.0版本中新增。
定义从Airflow发送到StatsD的所有指标的命名空间
- Type:
字符串
- Default:
airflow- Environment Variable:
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版本中新增。
允许向BaseOperator操作符传递额外的/未使用的参数(args, kwargs)。
如果设置为False,将抛出异常,
否则仅显示控制台消息。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__OPERATORS__ALLOW_ILLEGAL_ARGUMENTS
default_cpus¶
表示当操作员配置中未指定具体CPU请求时,默认分配给每个操作员的CPU单元数量
- Type:
字符串
- Default:
1- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_CPUS
default_deferrable¶
添加于版本2.7.0。
操作符和传感器中属性“deferrable”的默认值。
- Type:
布尔值
- Default:
false- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_DEFERRABLE
default_disk¶
表示当操作员配置中未指定具体磁盘请求时,默认分配给每个操作员的磁盘存储数量
- Type:
字符串
- Default:
512- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_DISK
default_gpus¶
表示当操作员配置中未指定具体的GPU请求时,默认分配给每个操作员的GPU数量
- Type:
字符串
- Default:
0- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_GPUS
default_owner¶
分配给每个新操作符的默认所有者,除非明确提供或通过default_args传递
- Type:
字符串
- Default:
airflow- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_OWNER
default_queue¶
在2.1.0版本中新增。
任务默认分配的工作队列,也是工作节点监听的队列。
- Type:
字符串
- Default:
default- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_QUEUE
default_ram¶
表示当操作员配置中未指定具体RAM请求时,默认分配给每个操作员的内存容量
- Type:
字符串
- Default:
512- Environment Variable:
AIRFLOW__OPERATORS__DEFAULT_RAM
[调度器]¶
allow_trigger_in_future¶
在1.10.8版本中新增。
允许为未来的执行日期触发外部DagRuns 仅在DAG中将schedule_interval设置为None时生效
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__SCHEDULER__ALLOW_TRIGGER_IN_FUTURE
允许的运行ID模式¶
在版本2.6.3中新增。
用于验证用户触发DAG时对run_id参数输入的run_id模式。该模式不会改变调度程序为计划DAG运行或不更改run_id参数触发的DAG运行生成run_id所使用的模式。
- Type:
字符串
- Default:
^[A-Za-z0-9_.~:+-]+$- Environment Variable:
AIRFLOW__SCHEDULER__ALLOWED_RUN_ID_PATTERN
默认启用追赶模式¶
通过将此设置为False来关闭调度器的追赶功能。
默认行为保持不变,
命令行回填仍然有效,但如果此值为False,
调度器将不会执行追赶操作,
不过可以在DAG定义中基于每个DAG单独设置(catchup)
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__CATCHUP_BY_DEFAULT
子进程日志目录¶
决定调度器子进程日志的存储目录
- Type:
字符串
- Default:
{AIRFLOW_HOME}/logs/scheduler- Environment Variable:
AIRFLOW__SCHEDULER__CHILD_PROCESS_LOG_DIRECTORY
创建cron数据间隔¶
在2.9.0版本中新增。
当为DAG的schedule参数提供cron表达式时,是否创建跨越一个时间间隔的DAG运行实例,还是仅针对单个时间点创建。
True: 使用CronDataIntervalTimetable,这适用于具有明确定义数据间隔的DAG。您将获得从前一个间隔结束到预定时间点的连续间隔。False: 使用CronTriggerTimetable,这更接近cron本身的行为。
值得注意的是,对于CronTriggerTimetable,逻辑日期与DAG运行尝试调度的时间相同;而对于CronDataIntervalTimetable,逻辑日期是数据间隔的开始时间,但DAG运行会在数据间隔结束时尝试调度。
另请参阅
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__CREATE_CRON_DATA_INTERVALS
dag目录列表间隔¶
扫描DAGs目录以查找新文件的频率(以秒为单位)。默认为5分钟。
- Type:
整数
- Default:
300- Environment Variable:
AIRFLOW__SCHEDULER__DAG_DIR_LIST_INTERVAL
DAG未活跃持续时间¶
在2.4.0版本中新增。
仅当[scheduler] standalone_dag_processor为true时适用。
Dag Processor未更新的DAG在经过此秒数后将被停用。
- Type:
整数
- Default:
600- Environment Variable:
AIRFLOW__SCHEDULER__DAG_STALE_NOT_SEEN_DURATION
enable_health_check¶
在2.4.0版本中新增。
当你启动调度程序时,如果设置为True,airflow会启动一个微型网络服务器子进程来提供健康检查服务
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__SCHEDULER__ENABLE_HEALTH_CHECK
文件解析排序模式¶
在2.1.0版本中新增。
在modified_time、random_seeded_by_host和alphabetical中选择一种。调度器将列出并对DAG文件进行排序以决定解析顺序。
modified_time: 按文件修改时间排序。这在处理大规模数据时非常有用,可以优先解析最近修改的DAG。random_seeded_by_host: 在多个调度器之间随机排序,但在同一主机上保持相同顺序。这在以HA模式运行调度器时非常有用,其中每个调度器可能解析不同的DAG文件。alphabetical: 按文件名排序
- Type:
字符串
- Default:
modified_time- Environment Variable:
AIRFLOW__SCHEDULER__FILE_PARSING_SORT_MODE
默认忽略首次依赖过去¶
在2.3.0版本中新增。
将此设置为True将使任务的第一个任务实例忽略depends_on_past设置。当数据库中不存在执行日期早于它的任务实例时,该任务实例将被视为任务的第一个任务实例,也就是说,新添加的任务无需手动标记成功即可被调度。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__IGNORE_FIRST_DEPENDS_ON_PAST_BY_DEFAULT
job_heartbeat_sec¶
任务实例会监听外部终止信号(当您从命令行界面或用户界面清除任务时),此参数定义它们监听的频率(以秒为单位)。
- Type:
浮点数
- Default:
5- Environment Variable:
AIRFLOW__SCHEDULER__JOB_HEARTBEAT_SEC
本地任务作业心跳秒数¶
添加于版本2.7.0。
LocalTaskJob向调度器发送心跳信号的频率(以秒为单位),用于通知其仍然存活。如果该值设置为0,心跳间隔将默认为[scheduler] scheduler_zombie_task_threshold的值。
- Type:
整数
- Default:
0- Environment Variable:
AIRFLOW__SCHEDULER__LOCAL_TASK_JOB_HEARTBEAT_SEC
每次循环最大回调次数¶
在2.3.0版本中新增。
仅当[scheduler] standalone_dag_processor为true且回调存储在数据库中时适用。包含单次循环中获取的最大回调数量。
- Type:
整数
- Default:
20- Environment Variable:
AIRFLOW__SCHEDULER__MAX_CALLBACKS_PER_LOOP
每次循环调度的最大DAG运行次数¶
在2.0.0版本中新增。
调度器在调度和排队任务时应检查(并锁定)多少个DagRuns。
另请参阅
- Type:
整数
- Default:
20- Environment Variable:
AIRFLOW__SCHEDULER__MAX_DAGRUNS_PER_LOOP_TO_SCHEDULE
每次循环中创建的最大DAG运行次数¶
在2.0.0版本中新增。
每个调度循环中为DAG创建DagRuns的最大数量。
另请参阅
- Type:
整数
- Default:
10- Environment Variable:
AIRFLOW__SCHEDULER__MAX_DAGRUNS_TO_CREATE_PER_LOOP
max_tis_per_query¶
这会改变调度主循环中的查询批次大小。
该值不应大于[core] parallelism。
如果设置过高,SQL查询性能可能会受到查询谓词复杂度和/或过度锁定的影响。
此外,可能会达到数据库允许的最大查询长度。
设置为0则使用[core] parallelism的值
- Type:
整数
- Default:
16- Environment Variable:
AIRFLOW__SCHEDULER__MAX_TIS_PER_QUERY
min_file_process_interval¶
DAG文件解析的间隔秒数。DAG文件每隔[scheduler] min_file_process_interval秒会被解析一次。DAG的更新会在这个间隔后生效。保持这个数值较低会增加CPU使用率。
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__SCHEDULER__MIN_FILE_PROCESS_INTERVAL
运行次数¶
在版本1.10.6中添加。
尝试调度每个DAG文件的次数 -1表示无限次数
- Type:
整数
- Default:
-1- Environment Variable:
AIRFLOW__SCHEDULER__NUM_RUNS
孤立任务检查间隔¶
在2.0.0版本中新增。
调度器应多久(以秒为单位)检查一次孤立任务和SchedulerJobs
- Type:
浮点数
- Default:
300.0- Environment Variable:
AIRFLOW__SCHEDULER__ORPHANED_TASKS_CHECK_INTERVAL
解析清理间隔¶
于版本2.5.0中新增。
检查过时DAG(预期文件中不再存在的DAG)的频率(以秒为单位),这些DAG应被停用,以及不再被引用且应标记为孤立的数据集。
- Type:
整数
- Default:
60- Environment Variable:
AIRFLOW__SCHEDULER__PARSING_CLEANUP_INTERVAL
解析预导入模块¶
在2.6.0版本中新增。
调度器会读取dag文件以提取将要使用的airflow模块,并提前导入它们,以避免每次解析过程都重新执行这一操作。如果某个airflow模块需要每次重新导入(以增加DAG解析时间为代价),可以将此标志设置为False来禁用此行为。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__PARSING_PRE_IMPORT_MODULES
解析进程¶
在1.10.14版本中新增。
调度器可以并行运行多个进程来解析DAG。这里定义了将运行多少个进程。
- Type:
整数
- Default:
2- Environment Variable:
AIRFLOW__SCHEDULER__PARSING_PROCESSES
池指标间隔¶
在2.0.0版本中新增。
池使用统计信息应多久(以秒为单位)发送到StatsD(如果启用了statsd_on)
- Type:
浮点数
- Default:
5.0- Environment Variable:
AIRFLOW__SCHEDULER__POOL_METRICS_INTERVAL
print_stats_interval¶
统计信息应多久打印到日志中。设置为0将禁用打印统计信息
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__SCHEDULER__PRINT_STATS_INTERVAL
schedule_after_task_execution¶
在2.0.0版本中新增。
Should the Task supervisor process perform a “mini scheduler” to attempt to schedule more tasks of the same DAG. Leaving this on will mean tasks in the same DAG execute quicker, but might starve out other dags in some circumstances
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULE_AFTER_TASK_EXECUTION
调度器健康检查服务器主机¶
添加于版本2.8.0。
当你启动调度程序时,airflow会启动一个微型web服务器子进程,用于在此主机上提供健康检查服务
- Type:
字符串
- Default:
0.0.0.0- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_SERVER_HOST
调度器健康检查服务器端口¶
在2.4.0版本中新增。
当你启动一个调度器时,airflow会启动一个微型网络服务器子进程,用于在此端口上提供健康检查服务
- Type:
整数
- Default:
8974- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_SERVER_PORT
调度器健康检查阈值¶
在1.10.2版本中新增。
如果最后一次调度器心跳发生在[scheduler] scheduler_health_check_threshold
之前(以秒为单位),则调度器被视为不健康。
此设置用于/health端点的健康检查以及SchedulerJob的airflow jobs check CLI命令中。
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_HEALTH_CHECK_THRESHOLD
调度器心跳间隔(秒)¶
调度器会持续尝试触发新任务(更多信息请参阅文档中的调度器部分)。这里定义了调度器运行的频率(以秒为单位)。
- Type:
整数
- Default:
5- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_HEARTBEAT_SEC
调度器空闲休眠时间¶
在版本2.2.0中新增。
控制调度器在循环之间的休眠时长,但如果循环中没有任务需要处理(例如没有调度任何任务),则会立即开始下一次循环迭代。
- Type:
浮点数
- Default:
1- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_IDLE_SLEEP_TIME
scheduler_zombie_task_threshold¶
本地任务作业会定期向数据库发送心跳信号。如果作业在此指定的秒数内未发送心跳,调度程序会将关联的任务实例标记为失败并重新调度该任务。
- Type:
整数
- Default:
300- Environment Variable:
AIRFLOW__SCHEDULER__SCHEDULER_ZOMBIE_TASK_THRESHOLD
stale_dag_threshold¶
在2.6.0版本中新增。
在重新解析DAG文件后,等待多少秒(以秒为单位)才停用过时的DAG(即预期文件中不再存在的DAG)。我们需要这个阈值的原因是考虑到文件解析和DAG加载之间的时间差。理论上最大可能耗时是[core] dag_file_processor_timeout,但当配置了较长的超时时间时,会导致过时DAG的停用出现显著延迟。
- Type:
整数
- Default:
50- Environment Variable:
AIRFLOW__SCHEDULER__STALE_DAG_THRESHOLD
独立DAG处理器¶
在2.3.0版本中新增。
DAG处理器是作为独立进程运行,还是作为调度器作业的子进程运行。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__SCHEDULER__STANDALONE_DAG_PROCESSOR
任务排队超时¶
在2.6.0版本中新增。
任务在被重试或设置为失败之前可以在队列状态中停留的时间。
- Type:
浮点数
- Default:
600.0- Environment Variable:
AIRFLOW__SCHEDULER__TASK_QUEUED_TIMEOUT
任务排队超时检查间隔¶
在2.6.0版本中新增。
检查任务在队列状态中停留时间超过[scheduler] task_queued_timeout的频率。
- Type:
浮点数
- Default:
120.0- Environment Variable:
AIRFLOW__SCHEDULER__TASK_QUEUED_TIMEOUT_CHECK_INTERVAL
触发超时检查间隔¶
在版本2.2.0中新增。
检查尚未运行的过期触发器请求的频率。
- Type:
浮点数
- Default:
15- Environment Variable:
AIRFLOW__SCHEDULER__TRIGGER_TIMEOUT_CHECK_INTERVAL
使用作业调度¶
在1.10.2版本中新增。
通过将此设置为False来关闭调度程序使用cron间隔。
在网页界面手动提交或使用trigger_dag触发的DAG仍将运行。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__USE_JOB_SCHEDULE
使用行级锁定¶
在2.0.0版本中新增。
调度器是否应在相关查询中执行SELECT ... FOR UPDATE。
如果设置为False,则不应同时运行多个调度器
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__SCHEDULER__USE_ROW_LEVEL_LOCKING
僵尸进程检测间隔¶
在2.3.0版本中新增。
调度器应多久(以秒为单位)检查僵尸任务。
- Type:
浮点数
- Default:
10.0- Environment Variable:
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_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]¶
后端¶
在版本1.10.10中新增。
要启用的密钥后端的完整类名(在搜索路径中将优先于环境变量和元存储)
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__SECRETS__BACKEND- Example:
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"}
- Type:
字符串
- Default:
''- Environment Variables:
AIRFLOW__SECRETS__BACKEND_KWARGSAIRFLOW__SECRETS__BACKEND_KWARGS_CMDAIRFLOW__SECRETS__BACKEND_KWARGS_SECRET
缓存生存时间(秒)¶
添加于版本2.7.0。
注意
这是一个实验性功能。
当缓存启用时,此参数表示我们认为缓存中的条目有效的持续时间。如果条目超过此秒数,则会刷新。 这意味着当缓存启用时,这是您需要等待以看到变量更改生效的最长时间。
- Type:
整数
- Default:
900- Environment Variable:
AIRFLOW__SECRETS__CACHE_TTL_SECONDS
使用缓存¶
添加于版本2.7.0。
注意
这是一个实验性功能。
在仅解析DAG时启用变量的本地缓存。 如果在顶层代码中使用变量,此选项可以加快DAG解析速度,但代价是变更传播时间会延长。 请注意此缓存仅涉及DAG解析步骤。当运行DAG任务时没有缓存机制。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__SECRETS__USE_CACHE
[传感器]¶
default_timeout¶
在2.3.0版本中新增。
传感器默认超时时间,默认为7天(7 * 24 * 60 * 60)。
- Type:
浮点数
- Default:
604800- Environment Variable:
AIRFLOW__SENSORS__DEFAULT_TIMEOUT
[sentry]¶
Sentry集成。在这里您可以基于Python平台提供额外的配置选项。更多详情请参阅Python / Configuration / Basic Options。不支持的选项:integrations, in_app_include, in_app_exclude, ignore_errors, before_breadcrumb, transport。
发送前¶
在版本2.2.0中新增。
配置sentry SDK使用的前置发送函数的点分路径。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__SENTRY__BEFORE_SEND
sentry_dsn¶
在版本1.10.6中添加。
- Type:
字符串
- Default:
''- Environment Variables:
AIRFLOW__SENTRY__SENTRY_DSNAIRFLOW__SENTRY__SENTRY_DSN_CMDAIRFLOW__SENTRY__SENTRY_DSN_SECRET
sentry_on¶
在2.0.0版本中新增。
启用错误报告发送至Sentry
- Type:
字符串
- Default:
false- Environment Variable:
AIRFLOW__SENTRY__SENTRY_ON
[smtp]¶
如果您希望airflow在重试或失败时发送邮件,并且想使用airflow.utils.email.send_email_smtp函数,您需要在此配置一个SMTP服务器
smtp主机¶
指定Airflow通过SMTP发送电子邮件通知时使用的主机服务器地址。
- Type:
字符串
- Default:
localhost- Environment Variable:
AIRFLOW__SMTP__SMTP_HOST
SMTP发件人地址¶
指定当Airflow发送邮件通知时使用的默认发件人邮箱地址。
- Type:
字符串
- Default:
airflow@example.com- Environment Variable:
AIRFLOW__SMTP__SMTP_MAIL_FROM
smtp密码¶
连接到SMTP服务器时用于身份验证的密码。
- Type:
字符串
- Default:
None- Environment Variables:
AIRFLOW__SMTP__SMTP_PASSWORDAIRFLOW__SMTP__SMTP_PASSWORD_CMDAIRFLOW__SMTP__SMTP_PASSWORD_SECRET- Example:
airflow
smtp_port¶
定义Airflow连接SMTP服务器发送邮件通知的端口号。
- Type:
字符串
- Default:
25- Environment Variable:
AIRFLOW__SMTP__SMTP_PORT
smtp重试限制¶
在2.0.0版本中新增。
定义Airflow尝试连接SMTP服务器的最大次数。
- Type:
整数
- Default:
5- Environment Variable:
AIRFLOW__SMTP__SMTP_RETRY_LIMIT
smtp_ssl¶
确定在与SMTP服务器通信时是否使用SSL连接。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__SMTP__SMTP_SSL
smtp_starttls¶
确定在连接到SMTP服务器时是否使用STARTTLS命令。
- Type:
字符串
- Default:
True- Environment Variable:
AIRFLOW__SMTP__SMTP_STARTTLS
smtp超时时间¶
在2.0.0版本中新增。
确定Apache Airflow系统等待与SMTP服务器建立连接的最长时间(以秒为单位)。
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__SMTP__SMTP_TIMEOUT
smtp用户¶
连接到SMTP服务器时进行身份验证的用户名。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__SMTP__SMTP_USER- Example:
airflow
[跟踪记录]¶
分布式追踪集成设置。
otel_debugging_on¶
在2.10.0版本中新增。
如果为True,所有跟踪信息也会输出到控制台。默认为False。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__TRACES__OTEL_DEBUGGING_ON
otel_host¶
在2.10.0版本中新增。
指定Airflow发送跟踪数据的OpenTelemetry Collector的主机名或IP地址。
- Type:
字符串
- Default:
localhost- Environment Variable:
AIRFLOW__TRACES__OTEL_HOST
otel开启¶
在2.10.0版本中新增。
支持将追踪数据发送到OpenTelemetry。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__TRACES__OTEL_ON
otel_port¶
在2.10.0版本中新增。
指定正在监听的OpenTelemetry Collector端口。
- Type:
字符串
- Default:
8889- Environment Variable:
AIRFLOW__TRACES__OTEL_PORT
otel_service¶
在2.10.0版本中新增。
追踪的默认服务名称。
- Type:
字符串
- Default:
Airflow- Environment Variable:
AIRFLOW__TRACES__OTEL_SERVICE
otel_ssl_active¶
在2.10.0版本中新增。
如果为True,将启用SSL。默认为False。 要建立到OpenTelemetry收集器的HTTPS连接, 您需要在OpenTelemetry收集器的config.yml文件中配置SSL证书和密钥。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__TRACES__OTEL_SSL_ACTIVE
otel_task_log_event¶
在2.10.0版本中新增。
如果为True,任务完成后,完整的任务日志消息将被添加为span事件,按64k大小分块。默认为False。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__TRACES__OTEL_TASK_LOG_EVENT
[触发器]¶
default_capacity¶
在版本2.2.0中新增。
默认情况下,单个触发器(Triggerer)一次会运行多少个触发器。
- Type:
字符串
- Default:
1000- Environment Variable:
AIRFLOW__TRIGGERER__DEFAULT_CAPACITY
job_heartbeat_sec¶
在版本2.6.3中新增。
Triggerer作业的心跳频率,用于确保其未被终止。
- Type:
浮点数
- Default:
5- Environment Variable:
AIRFLOW__TRIGGERER__JOB_HEARTBEAT_SEC
triggerer健康检查阈值¶
添加于版本2.7.0。
如果最后一次触发器心跳发生在[triggerer] triggerer_health_check_threshold
之前(以秒为单位),则触发器被视为不健康。
这用于/health端点中的健康检查以及TriggererJob的airflow jobs check CLI命令。
- Type:
浮点数
- Default:
30- Environment Variable:
AIRFLOW__TRIGGERER__TRIGGERER_HEALTH_CHECK_THRESHOLD
[webserver]¶
access_denied_message¶
添加于版本2.7.0。
当用户尝试执行超出其授权权限的操作时显示的消息。
- Type:
字符串
- Default:
访问 被 拒绝- Environment Variable:
AIRFLOW__WEBSERVER__ACCESS_DENIED_MESSAGE
access_logfile¶
gunicorn网络服务器的日志文件。'-'表示记录到标准错误输出。
- Type:
字符串
- Default:
-- Environment Variable:
AIRFLOW__WEBSERVER__ACCESS_LOGFILE
access_logformat¶
在2.0.0版本中新增。
gunicorn网络服务器的访问日志格式。
默认格式为%%(h)s %%(l)s %%(u)s %%(t)s "%%(r)s" %%(s)s %%(b)s "%%(f)s" "%%(a)s"
详情请参阅Gunicorn设置:'access_log_format'参考
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__WEBSERVER__ACCESS_LOGFORMAT
allow_raw_html_descriptions¶
添加于版本2.8.0。
A DAG author is able to provide any raw HTML into doc_md or params description in
description_md for text formatting. This is including potentially unsafe javascript.
Displaying the DAG or trigger form in web UI provides the DAG author the potential to
inject malicious code into clients browsers. To ensure the web UI is safe by default,
raw HTML is disabled by default. If you trust your DAG authors, you can enable HTML
support in markdown by setting this option to True.
This parameter also enables the deprecated fields description_html and
custom_html_form in DAG params until the feature is removed in a future version.
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__ALLOW_RAW_HTML_DESCRIPTIONS- Example:
False
允许的负载大小¶
在版本2.8.1中新增。
可发送的请求负载最大大小(以MB为单位)。
- Type:
浮点数
- Default:
1.0- Environment Variable:
AIRFLOW__WEBSERVER__ALLOWED_PAYLOAD_SIZE
analytics_id¶
在1.10.5版本中新增。
您在分析工具中的账户唯一ID
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__ANALYTICS_ID
分析工具¶
将匿名用户活动发送到您的分析工具
可选择 google_analytics, segment, metarouter, 或 matomo
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__ANALYTICS_TOOL
分析网址¶
在2.9.0版本中新增。
您的实例URL,仅适用于Matomo。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__ANALYTICS_URL- Example:
https://your.matomo.instance.com/
audit_view_excluded_events¶
在2.3.0版本中新增。
逗号分隔的视图事件字符串,用于从DAG审计视图中排除。 所有其他事件将被添加,除了此处传递的事件。 数据库中的审计日志不会受此参数影响。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__AUDIT_VIEW_EXCLUDED_EVENTS- Example:
cli_task_run,running,success
audit_view_included_events¶
在2.3.0版本中新增。
以逗号分隔的视图事件字符串,用于包含在DAG审计视图中。 如果传入此参数,只有这些事件会填充DAG审计视图。 数据库中的审计日志不会受此参数影响。
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__AUDIT_VIEW_INCLUDED_EVENTS- Example:
dagrun_cleared,failed
自动刷新间隔¶
在版本2.2.0中新增。
当自动刷新开启时,DAG数据在图形或网格视图中的自动刷新频率(以秒为单位)
- Type:
整数
- Default:
3- Environment Variable:
AIRFLOW__WEBSERVER__AUTO_REFRESH_INTERVAL
base_url¶
您网站的基础URL:Airflow无法猜测您使用的域名或CNAME。 该URL用于在"浏览-任务实例"菜单的日志URL列中创建链接, 以及在任何由Airflow发送的包含指向您Web服务器链接的自动邮件中使用。
- Type:
字符串
- Default:
http://localhost:8080- Environment Variable:
AIRFLOW__WEBSERVER__BASE_URL
caching_hash_method¶
在2.6.0版本中新增。
webserver使用的缓存算法。必须是一个有效的hashlib函数名称。
- Type:
字符串
- Default:
md5- Environment Variable:
AIRFLOW__WEBSERVER__CACHING_HASH_METHOD- Example:
sha256
配置文件¶
添加于版本2.7.0。
用于配置webserver参数的webserver配置文件路径
- Type:
字符串
- Default:
{AIRFLOW_HOME}/webserver_config.py- Environment Variable:
AIRFLOW__WEBSERVER__CONFIG_FILE
DAG默认视图¶
默认DAG视图。有效值为:grid, graph, duration, gantt, landing_times
- Type:
字符串
- Default:
grid- Environment Variable:
AIRFLOW__WEBSERVER__DAG_DEFAULT_VIEW
DAG方向¶
默认DAG方向。有效值为:
LR (左->右), TB (上->下), RL (右->左), BT (下->上)
- Type:
字符串
- Default:
LR- Environment Variable:
AIRFLOW__WEBSERVER__DAG_ORIENTATION
default_dag_run_display_number¶
在用户界面中显示的默认dagrun
- Type:
字符串
- Default:
25- Environment Variable:
AIRFLOW__WEBSERVER__DEFAULT_DAG_RUN_DISPLAY_NUMBER
默认界面时区¶
在版本1.10.10中新增。
在用户界面中显示所有日期的默认时区,可以是UTC、系统时区或任何IANA时区字符串(例如Europe/Amsterdam)。如果留空,将使用core/default_timezone的默认值
- Type:
字符串
- Default:
UTC- Environment Variable:
AIRFLOW__WEBSERVER__DEFAULT_UI_TIMEZONE- Example:
America/New_York
default_wrap¶
在1.10.4版本中新增。
DAG代码和TI日志视图中换行切换的默认设置。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__DEFAULT_WRAP
enable_proxy_fix¶
在版本1.10.1中新增。
启用werkzeug的ProxyFix中间件以支持反向代理
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__ENABLE_PROXY_FIX
enable_swagger_ui¶
在2.6.0版本中新增。
在Web服务器中运行SwaggerUI的布尔值。
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__WEBSERVER__ENABLE_SWAGGER_UI
错误日志文件¶
gunicorn网络服务器的日志文件。'-'表示记录到标准错误输出。
- Type:
字符串
- Default:
-- Environment Variable:
AIRFLOW__WEBSERVER__ERROR_LOGFILE
expose_config¶
在网页服务器中公开配置文件。设置为non-sensitive-only将显示除涉及安全问题的值之外的所有配置值。True显示所有值。False则完全隐藏配置信息。
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__EXPOSE_CONFIG
暴露主机名¶
在1.10.8版本中新增。
在网页服务器中暴露主机名
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__EXPOSE_HOSTNAME
expose_stacktrace¶
在1.10.8版本中新增。
在网页服务器中暴露堆栈跟踪信息
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__EXPOSE_STACKTRACE
网格视图排序顺序¶
添加于版本2.7.0。
网格视图中的排序顺序。有效值为:topological, hierarchical_alphabetical
- Type:
字符串
- Default:
topological- Environment Variable:
AIRFLOW__WEBSERVER__GRID_VIEW_SORTING_ORDER
默认隐藏暂停的DAGs¶
默认情况下,webserver会显示已暂停的DAG。切换此选项可在默认情况下隐藏已暂停的DAG
- Type:
字符串
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__HIDE_PAUSED_DAGS_BY_DEFAULT
实例名称¶
在2.1.0版本中新增。
为DAGs概览页面设置自定义页面标题,并为所有页面设置站点标题
- Type:
字符串
- Default:
None- Environment Variable:
AIRFLOW__WEBSERVER__INSTANCE_NAME
instance_name_has_markup¶
在2.3.0版本中新增。
DAG概览页面的自定义标题是否包含任何标记语言
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__INSTANCE_NAME_HAS_MARKUP
日志动画速度¶
在1.10.8版本中新增。
自动尾部日志显示的动画速度。
- Type:
整数
- Default:
1000- Environment Variable:
AIRFLOW__WEBSERVER__LOG_ANIMATION_SPEED
log_auto_tailing_offset¶
在1.10.8版本中新增。
距离页面底部多远时启用自动跟踪。
- Type:
整数
- Default:
30- Environment Variable:
AIRFLOW__WEBSERVER__LOG_AUTO_TAILING_OFFSET
日志获取延迟秒数¶
在1.10.8版本中新增。
下次获取日志前等待的时间间隔(以秒为单位)。
- Type:
整数
- Default:
2- Environment Variable:
AIRFLOW__WEBSERVER__LOG_FETCH_DELAY_SEC
日志获取超时时间(秒)¶
webserver从其他工作机器获取日志时,等待初始握手的时间(以秒为单位)
- Type:
字符串
- Default:
5- Environment Variable:
AIRFLOW__WEBSERVER__LOG_FETCH_TIMEOUT_SEC
最大表单内存大小¶
在2.10.5版本中新增。
multipart/form-data请求体中,任何非文件表单字段的最大字节大小限制。 如果超过此限制,webserver将返回413 RequestEntityTooLarge错误。
- Type:
整数
- Default:
500000- Environment Variable:
AIRFLOW__WEBSERVER__MAX_FORM_MEMORY_SIZE
max_form_parts¶
在2.10.5版本中新增。
multipart/form-data 请求体中允许的最大字段数量。 如果超过此限制,webserver 将返回 413 RequestEntityTooLarge 错误。
- Type:
整数
- Default:
1000- Environment Variable:
AIRFLOW__WEBSERVER__MAX_FORM_PARTS
触发器最近配置数量¶
在2.9.0版本中新增。
触发器网页表单选择器中最近的DAG运行配置数量。
- Type:
整数
- Default:
5- Environment Variable:
AIRFLOW__WEBSERVER__NUM_RECENT_CONFIGURATIONS_FOR_TRIGGER- Example:
10
page_size¶
在用户界面中所有列表视图保持一致的页面大小
- Type:
字符串
- Default:
100- Environment Variable:
AIRFLOW__WEBSERVER__PAGE_SIZE
proxy_fix_x_for¶
在版本1.10.7中添加。
信任X-Forwarded-For头的数值数量。
详情请参阅Werkzeug: X-Forwarded-For Proxy Fix。
- Type:
整数
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__PROXY_FIX_X_FOR
proxy_fix_x_host¶
在版本1.10.7中添加。
信任X-Forwarded-Host标头的数值数量。
详情请参阅Werkzeug: X-Forwarded-For Proxy Fix。
- Type:
整数
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__PROXY_FIX_X_HOST
proxy_fix_x_port¶
在版本1.10.7中添加。
信任X-Forwarded-Port值的数量。
详情请参阅Werkzeug: X-Forwarded-For Proxy Fix。
- Type:
整数
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__PROXY_FIX_X_PORT
proxy_fix_x_prefix¶
在版本1.10.7中添加。
信任X-Forwarded-Prefix值的数量。
详情请参阅Werkzeug: X-Forwarded-For Proxy Fix。
- Type:
整数
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__PROXY_FIX_X_PREFIX
proxy_fix_x_proto¶
在版本1.10.7中添加。
信任X-Forwarded-Proto标头的值数量。
详情请参阅Werkzeug: X-Forwarded-For Proxy Fix。
- Type:
整数
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__PROXY_FIX_X_PROTO
插件变更时重新加载¶
在1.10.11版本中新增。
如果设置为True,Airflow将跟踪plugins_folder目录中的文件。当检测到更改时,
会重新加载gunicorn。如果设置为True,gunicorn将不预加载启动,这会较慢,
占用更多内存,并可能导致竞争条件。在生产环境中应避免将此设置为True。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__RELOAD_ON_PLUGIN_CHANGE
require_confirmation_dag_change¶
在2.9.0版本中新增。
在网页界面中修改DAG时需要确认。这是为了防止对可能在敏感环境(如生产环境)中运行的DAG进行意外更改。
当设置为True时,用户尝试暂停/取消暂停或触发DAG时将显示确认对话框。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__REQUIRE_CONFIRMATION_DAG_CHANGE
run_internal_api¶
在2.6.0版本中新增。
用于在webserver中运行Internal API的布尔值。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__RUN_INTERNAL_API
secret_key¶
用于运行Flask应用的密钥。应尽可能随机生成。但请注意,当运行多个Web服务器实例时,必须确保所有实例使用相同的secret_key,否则某些实例会出现"CSRF会话令牌缺失"错误。
该Web服务器密钥还用于在检索日志时授权对Celery工作节点的请求。
需注意的是,使用该密钥生成的令牌有效期较短——请确保运行Airflow组件的所有机器时间同步(例如使用ntpd服务),否则在访问日志时可能会遇到"禁止访问"错误。
- Type:
字符串
- Default:
{SECRET_KEY}- Environment Variables:
AIRFLOW__WEBSERVER__SECRET_KEYAIRFLOW__WEBSERVER__SECRET_KEY_CMDAIRFLOW__WEBSERVER__SECRET_KEY_SECRET
session_backend¶
添加于版本2.2.4。
用于存储Web会话数据的后端类型,可以是database或securecookie。对于
database后端,会话存储在数据库中,并且可以在那里进行管理(例如当您重置用户密码时,该用户的所有会话都会被
删除)。对于securecookie后端,会话以加密cookie的形式存储在客户端。
securecookie机制比数据库后端"更轻量",但在您重置用户密码时不会删除会话,这意味着除了等待过期时间外,
使某个用户的所有会话失效的唯一方法是更改secret_key并重新启动Web服务器(这
也会使所有其他用户的会话失效并注销)。
当您使用database后端时,请确保通过定期运行airflow db clean --table session命令来保持数据库会话表的小型化,特别是如果您有自动化的API调用,这些调用会为每次调用创建新会话而不是重用存储在浏览器cookie中的会话。
- Type:
字符串
- Default:
database- Environment Variable:
AIRFLOW__WEBSERVER__SESSION_BACKEND- Example:
securecookie
会话生命周期(分钟)¶
在1.10.13版本中新增。
UI cookie的有效期(分钟)。用户在不活动[webserver] session_lifetime_minutes分钟后将被从UI登出
- Type:
整数
- Default:
43200- Environment Variable:
AIRFLOW__WEBSERVER__SESSION_LIFETIME_MINUTES
显示已完成运行的近期统计信息¶
在2.0.0版本中新增。
如果设置,'最近任务'统计信息将显示旧的DagRuns
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__WEBSERVER__SHOW_RECENT_STATS_FOR_COMPLETED_RUNS
如果没有参数则显示触发器表单¶
添加于版本2.7.0。
无参数DAG的触发DAG运行按钮行为。False表示跳过并直接触发,不显示添加dag_run.conf的表单,True表示始终显示该表单。如果定义了参数,则始终显示表单。
- Type:
布尔值
- Default:
False- Environment Variable:
AIRFLOW__WEBSERVER__SHOW_TRIGGER_FORM_IF_NO_PARAMS
warn_deployment_exposure¶
在2.3.0版本中新增。
用于显示公开可见部署警告的布尔值
- Type:
布尔值
- Default:
True- Environment Variable:
AIRFLOW__WEBSERVER__WARN_DEPLOYMENT_EXPOSURE
web服务器主机¶
启动web服务器时指定的IP地址
- Type:
字符串
- Default:
0.0.0.0- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_HOST
web_server_master_timeout¶
网络服务器在终止无响应的gunicorn主进程前等待的秒数
- Type:
字符串
- Default:
120- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_MASTER_TIMEOUT
web服务器端口¶
运行Web服务器的端口
- Type:
字符串
- Default:
8080- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_PORT
web服务器SSL证书¶
网页服务器的SSL证书和密钥路径。当两者都提供时,将启用SSL功能。这不会改变网页服务器的端口。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_SSL_CERT
web服务器SSL密钥¶
Web服务器的SSL证书和密钥路径。当两者都提供时,将启用SSL。这不会改变Web服务器的端口。
- Type:
字符串
- Default:
''- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_SSL_KEY
web服务器工作线程超时¶
gunicorn网络服务器在worker超时前等待的秒数
- Type:
字符串
- Default:
120- Environment Variable:
AIRFLOW__WEBSERVER__WEB_SERVER_WORKER_TIMEOUT
worker_class¶
worker应使用的gunicorn类。选项包括
sync (默认), eventlet, gevent.
警告
当使用gevent时,你可能还需要将环境变量_AIRFLOW_PATCH_GEVENT设置为"1",以确保gevent补丁尽可能早地完成。
请注意仅在web服务器上设置_AIRFLOW_PATCH_GEVENT,因为gevent补丁可能会通过multiprocessing套接字模块影响调度程序行为并导致崩溃。
更多详情请参阅相关 Issues / PRs:
- Type:
字符串
- Default:
sync- Environment Variable:
AIRFLOW__WEBSERVER__WORKER_CLASS
worker_refresh_batch_size¶
每次刷新的工作进程数量。当设置为0时,工作进程刷新功能将被禁用。当设置为非零值时,airflow会定期通过启动新工作进程并终止旧进程来刷新webserver工作进程。
- Type:
字符串
- Default:
1- Environment Variable:
AIRFLOW__WEBSERVER__WORKER_REFRESH_BATCH_SIZE
worker刷新间隔¶
在刷新一批工作节点前需要等待的秒数。
- Type:
字符串
- Default:
6000- Environment Variable:
AIRFLOW__WEBSERVER__WORKER_REFRESH_INTERVAL
workers¶
运行Gunicorn网络服务器的工作进程数量
- Type:
字符串
- Default:
4- Environment Variable:
AIRFLOW__WEBSERVER__WORKERS
x_frame_enabled¶
在1.10.8版本中新增。
允许UI在框架中渲染
- Type:
布尔值
- Default:
True- Environment Variable:
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