内容
命令行界面和环境变量参考¶
命令行界面¶
Airflow 拥有非常丰富的命令行界面,允许对 DAG 进行多种类型的操作,启动服务,以及支持开发和测试。
注意
有关使用 CLI 的更多信息,请参阅 使用命令行界面
实现执行器的提供程序可能会向 CLI 贡献额外的命令。以下是社区提供程序贡献的命令
Celery 执行器和相关的 CLI 命令: Celery 执行器命令
Kubernetes 执行器和相关的 CLI 命令: Kubernetes 执行器命令
AWS 和相关的 CLI 命令: Amazon CLI 命令
users
和roles
CLI 命令在 FAB 提供程序文档中进行了描述 FAB CLI 命令
Usage: airflow [-h] GROUP_OR_COMMAND ...
位置参数¶
- 组或命令
可能的选择:备忘单、配置、连接、dag-processor、dags、db、信息、internal-api、作业、kerberos、插件、池、提供程序、角色、rotate-fernet-key、调度器、独立、sync-perm、任务、触发器、用户、变量、版本、webserver
子命令¶
配置¶
查看配置
airflow config [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:获取值、列表
子命令¶
获取值¶
打印配置的值
airflow config get-value [-h] [-v] section option
- 部分
部分名称
- 选项
选项名称
- -v,--verbose
使日志输出更详细
默认值:False
列表¶
列出配置的选项
airflow config list [-h] [--color {auto,on,off}] [-c] [-a] [-p] [-d] [-V] [-e]
[-s] [--section SECTION] [-v]
- --color
可能的选择:自动、开启、关闭
是否输出彩色输出(默认值:自动)
默认值:“自动”
- -c,--comment-out-everything
注释掉所有配置选项。可用作新安装的起点
默认值:False
- -a,--defaults
仅显示默认值 - 不包括本地配置、来源、包含描述、示例、变量。注释掉所有内容。
默认值:False
- -p,--exclude-providers
排除提供程序配置(默认情况下包含)
默认值:False
- -d,--include-descriptions
显示配置变量的描述
默认值:False
- -V,--include-env-vars
显示每个选项的环境变量
默认值:False
- -e,--include-examples
显示配置变量的示例
默认值:False
- -s,--include-sources
显示配置变量的来源
默认值:False
- --section
部分名称
- -v,--verbose
使日志输出更详细
默认值:False
连接¶
管理连接
airflow connections [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:添加、创建默认连接、删除、导出、获取、导入、列表、测试
子命令¶
添加¶
添加连接
airflow connections add [-h] [--conn-description CONN_DESCRIPTION]
[--conn-extra CONN_EXTRA] [--conn-host CONN_HOST]
[--conn-json CONN_JSON] [--conn-login CONN_LOGIN]
[--conn-password CONN_PASSWORD]
[--conn-port CONN_PORT] [--conn-schema CONN_SCHEMA]
[--conn-type CONN_TYPE] [--conn-uri CONN_URI]
conn_id
- 连接 ID
连接 ID,获取/添加/删除/测试连接时需要
- --conn-description
连接描述,添加连接时可选
- --conn-extra
连接额外字段,添加连接时可选
- --conn-host
连接主机,添加连接时可选
- --conn-json
连接 JSON,使用 JSON 表示添加连接时需要
- --conn-login
连接登录名,添加连接时可选
- --conn-password
连接密码,添加连接时可选
- --conn-port
连接端口,添加连接时可选
- --conn-schema
连接架构,添加连接时可选
- --conn-type
连接类型,没有 conn_uri 时添加连接需要
- --conn-uri
连接 URI,没有 conn_type 时添加连接需要
创建默认连接¶
从所有提供程序创建所有默认连接
airflow connections create-default-connections [-h] [-v]
- -v,--verbose
使日志输出更详细
默认值:False
删除¶
删除连接
airflow connections delete [-h] [--color {auto,on,off}] [-v] conn_id
- 连接 ID
连接 ID,获取/添加/删除/测试连接时需要
- --color
可能的选择:自动、开启、关闭
是否输出彩色输出(默认值:自动)
默认值:“自动”
- -v,--verbose
使日志输出更详细
默认值:False
导出¶
可以使用以下命令在 STDOUT 中导出所有连接:airflow connections export - 文件格式可以通过提供的文件扩展名确定。例如,以下命令将以 JSON 格式导出连接:airflow connections export /tmp/connections.json --file-format 参数可用于控制文件格式。例如,默认格式是 STDOUT 模式下的 JSON,可以使用以下命令覆盖:airflow connections export - --file-format yaml --file-format 参数也可以用于文件,例如:airflow connections export /tmp/connections --file-format json。以env文件格式导出时,您可以通过使用选项--serialization-format传递uri或json来控制使用 URI 格式还是 JSON 格式序列化连接。
airflow connections export [-h] [--file-format {json,yaml,env}]
[--format {json,yaml,env}]
[--serialization-format {json,uri}] [-v]
file
- 文件
用于导出连接的输出文件路径
- --file-format
可能的选择:json、yaml、env
导出的文件格式
- --format
可能的选择:json、yaml、env
已弃用 - 请改用--file-format。用于导出的文件格式。
- --serialization-format
可能的选择:json、uri
以.env格式导出时,定义如何序列化连接。默认值为uri。
- -v,--verbose
使日志输出更详细
默认值:False
获取¶
获取连接
airflow connections get [-h] [--color {auto,on,off}]
[-o table, json, yaml, plain] [-v]
conn_id
- 连接 ID
连接 ID,获取/添加/删除/测试连接时需要
- --color
可能的选择:自动、开启、关闭
是否输出彩色输出(默认值:自动)
默认值:“自动”
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
导入¶
可以从 export 命令的输出中导入连接。文件类型必须为 json、yaml 或 env,并将自动推断。
airflow connections import [-h] [--overwrite] [-v] file
- 文件
从文件导入连接
- --overwrite
如果发生冲突,则覆盖现有条目
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
dag-processor¶
启动独立的 Dag Processor 实例
airflow dag-processor [-h] [-D] [-p] [-l LOG_FILE] [-n NUM_RUNS] [--pid [PID]]
[--stderr STDERR] [--stdout STDOUT] [-S SUBDIR] [-v]
命名参数¶
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -p, --do-pickle
尝试序列化 DAG 对象以发送给工作器,而不是让工作器运行其代码版本
默认值:False
- -l, --log-file
日志文件的位置
- -n, --num-runs
设置在退出前要执行的运行次数
默认值:-1
- --pid
PID 文件位置
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
dags¶
管理 DAG
airflow dags [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:backfill、delete、details、list、list-import-errors、list-jobs、list-runs、next-execution、pause、report、reserialize、show、show-dependencies、state、test、trigger、unpause
子命令¶
backfill¶
针对指定的日期范围运行 DAG 的子部分。如果使用了 reset_dag_run 选项,backfill 将首先提示用户 airflow 是否应该清除回填日期范围内的所有先前 dag_run 和 task_instances。如果使用了 rerun_failed_tasks,backfill 将自动重新运行回填日期范围内先前失败的任务实例
airflow dags backfill [-h] [-c CONF] [--continue-on-failures]
[--delay-on-limit DELAY_ON_LIMIT] [--disable-retry] [-x]
[-n] [-e END_DATE] [-i] [-I] [-l] [-m] [--pool POOL]
[--rerun-failed-tasks] [--reset-dagruns] [-B]
[-s START_DATE] [-S SUBDIR] [-t TASK_REGEX]
[--treat-dag-as-regex] [--treat-dag-id-as-regex] [-v]
[-y]
dag_id
- dag_id
dag 的 ID
- -c, --conf
序列化为 DagRun 的 conf 属性的 JSON 字符串
- --continue-on-failures
如果设置,即使某些任务失败,回填也将继续
默认值:False
- --delay-on-limit
达到最大活动 dag 运行数(max_active_runs)的限制后,在尝试再次执行 dag 运行之前等待的秒数
默认值:1.0
- --disable-retry
如果设置,回填将设置任务为失败,而不重试。
默认值:False
- -x, --donot-pickle
不要尝试序列化 DAG 对象以发送给工作器,只需告诉工作器运行其代码版本即可
默认值:False
- -n, --dry-run
对每个任务执行空运行。仅渲染每个任务的模板字段,不执行其他任何操作
默认值:False
- -e, --end-date
覆盖结束日期 YYYY-MM-DD
- -i, --ignore-dependencies
跳过上游任务,仅运行与正则表达式匹配的任务。仅与 task_regex 一起使用
默认值:False
- -I, --ignore-first-depends-on-past
仅忽略第一组任务的 depends_on_past 依赖项(回填中的后续执行确实尊重 depends_on_past)
默认值:False
- -l, --local
使用 LocalExecutor 运行任务
默认值:False
- -m, --mark-success
将作业标记为成功,而不运行它们
默认值:False
- --pool
要使用的资源池
- --rerun-failed-tasks
如果设置,回填将自动重新运行回填日期范围内的所有失败任务,而不是抛出异常
默认值:False
- --reset-dagruns
如果设置,回填将删除现有的与回填相关的 DAG 运行,并使用新的、正在运行的 DAG 运行重新开始
默认值:False
- -B, --run-backwards
如果设置,回填将首先从最近的一天开始运行任务。如果有依赖于过去的 任务,此选项将抛出异常
默认值:False
- -s, --start-date
覆盖开始日期 YYYY-MM-DD
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -t, --task-regex
用于过滤特定 task_id 的正则表达式(可选)
- --treat-dag-as-regex
已弃用 – 请改用 –treat-dag-id-as-regex
默认值:False
- --treat-dag-id-as-regex
如果设置,dag_id 将被视为正则表达式,而不是精确字符串
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
delete¶
删除与指定 DAG 相关的所有数据库记录
airflow dags delete [-h] [-v] [-y] dag_id
- dag_id
dag 的 ID
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
details¶
获取给定 DAG ID 的 DAG 详细信息
airflow dags details [-h] [-o table, json, yaml, plain] [-v] dag_id
- dag_id
dag 的 ID
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
list¶
列出所有 DAG
airflow dags list [-h] [--columns COLUMNS] [-o table, json, yaml, plain]
[-S SUBDIR] [-v]
- --columns
要渲染的列列表。(默认值:[‘dag_id’, ‘fileloc’, ‘owner’, ‘is_paused’])
默认值:(‘dag_id’, ‘fileloc’, ‘owners’, ‘is_paused’)
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
list-import-errors¶
列出所有具有导入错误的 DAG
airflow dags list-import-errors [-h] [-o table, json, yaml, plain] [-S SUBDIR]
[-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
list-jobs¶
列出作业
airflow dags list-jobs [-h] [-d DAG_ID] [--limit LIMIT]
[-o table, json, yaml, plain]
[--state running, success, restarting, failed] [-v]
- -d, --dag-id
dag 的 ID
- --limit
返回有限数量的记录
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- --state
可能的选择:running、success、restarting、failed
仅列出与该状态相对应的作业
- -v,--verbose
使日志输出更详细
默认值:False
list-runs¶
列出给定 DAG ID 的 DAG 运行。如果给出了 state 选项,它将仅搜索具有给定状态的所有 dagrun。如果给出了 no_backfill 选项,它将过滤掉给定 dag ID 的所有回填 dagrun。如果给出了 start_date,它将过滤掉在此日期之前执行的所有 dagrun。如果给出了 end_date,它将过滤掉在此日期之后执行的所有 dagrun。
airflow dags list-runs [-h] -d DAG_ID [-e END_DATE] [--no-backfill]
[-o table, json, yaml, plain] [-s START_DATE]
[--state queued, running, success, failed] [-v]
- -d, --dag-id
dag 的 ID
- -e, --end-date
覆盖结束日期 YYYY-MM-DD
- --no-backfill
过滤给定 dag ID 的所有回填 dagrun
默认值:False
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -s, --start-date
覆盖开始日期 YYYY-MM-DD
- --state
可能的选择:queued、running、success、failed
仅列出与该状态相对应的 DAG 运行
- -v,--verbose
使日志输出更详细
默认值:False
next-execution¶
获取 DAG 的下一个执行日期时间。它返回一个执行,除非给出了 num-executions 选项
airflow dags next-execution [-h] [-n NUM_EXECUTIONS] [-S SUBDIR] [-v] dag_id
- dag_id
dag 的 ID
- -n, --num-executions
要显示的下一个执行日期时间数
默认值:1
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
pause¶
暂停一个或多个 DAG。此命令允许停止指定 DAG 的执行,禁用进一步的任务调度。使用 –treat-dag-id-as-regex 通过将 –dag-id 视为正则表达式模式来定位多个 DAG。
airflow dags pause [-h] [-o table, json, yaml, plain] [-S SUBDIR]
[--treat-dag-id-as-regex] [-v] [-y]
dag_id
- dag_id
dag 的 ID
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- --treat-dag-id-as-regex
如果设置,dag_id 将被视为正则表达式,而不是精确字符串
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
report¶
显示 DagBag 加载报告
airflow dags report [-h] [-o table, json, yaml, plain] [-S SUBDIR] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
reserialize¶
从元数据数据库中删除所有序列化的 dag。这将导致所有 DAG 从 DagBag 文件夹重新序列化。如果您的序列化 DAG 与您正在运行的 Airflow 版本不同步,这将很有帮助。
airflow dags reserialize [-h] [--clear-only] [-S SUBDIR] [-v]
- --clear-only
如果传递,则序列化 DAG 将被清除,但不会重新序列化。
默认值:False
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
show¶
–imgcat 选项仅在 iTerm 中有效。
有关更多信息,请参阅:https://www.iterm2.com/documentation-images.html
–save 选项将结果保存到指定的文件。
文件格式由文件扩展名确定。有关支持格式的更多信息,请参阅:https://www.graphviz.org/doc/info/output.html
如果要创建 PNG 文件,则应执行以下命令:airflow dags show <DAG_ID> –save output.png
如果要创建 DOT 文件,则应执行以下命令:airflow dags show <DAG_ID> –save output.dot
airflow dags show [-h] [--imgcat] [-s SAVE] [-S SUBDIR] [-v] dag_id
- dag_id
dag 的 ID
- --imgcat
使用 imgcat 工具显示图形。
默认值:False
- -s, --save
将结果保存到指定的文件。
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
show-dependencies¶
–imgcat 选项仅在 iTerm 中有效。
有关更多信息,请参阅:https://www.iterm2.com/documentation-images.html
–save 选项将结果保存到指定的文件。
文件格式由文件扩展名确定。有关支持格式的更多信息,请参阅:https://www.graphviz.org/doc/info/output.html
如果要创建 PNG 文件,则应执行以下命令:airflow dags show-dependencies –save output.png
如果要创建 DOT 文件,则应执行以下命令:airflow dags show-dependencies –save output.dot
airflow dags show-dependencies [-h] [--imgcat] [-s SAVE] [-S SUBDIR] [-v]
- --imgcat
使用 imgcat 工具显示图形。
默认值:False
- -s, --save
将结果保存到指定的文件。
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
state¶
获取 dag 运行的状态
airflow dags state [-h] [-S SUBDIR] [-v] dag_id execution_date
- dag_id
dag 的 ID
- execution_date
DAG 的执行日期
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
test¶
针对给定的 DAG 和执行日期执行一次 DagRun。
–imgcat-dagrun 选项仅在 iTerm 中有效。
有关更多信息,请参阅:https://www.iterm2.com/documentation-images.html
如果使用了 –save-dagrun,则在完成回填后,将当前 DAG 运行的图表保存到指定的文件。文件格式由文件扩展名确定。有关支持格式的更多信息,请参阅:https://www.graphviz.org/doc/info/output.html
如果要创建 PNG 文件,则应执行以下命令:airflow dags test <DAG_ID> <EXECUTION_DATE> –save-dagrun output.png
如果要创建 DOT 文件,则应执行以下命令:airflow dags test <DAG_ID> <EXECUTION_DATE> –save-dagrun output.dot
airflow dags test [-h] [-c CONF] [--imgcat-dagrun] [--save-dagrun SAVE_DAGRUN]
[--show-dagrun] [-S SUBDIR] [-v]
dag_id [execution_date]
- dag_id
dag 的 ID
- execution_date
DAG 的执行日期(可选)
- -c, --conf
序列化为 DagRun 的 conf 属性的 JSON 字符串
- --imgcat-dagrun
在 dag 运行完成后,使用 imgcat 工具在屏幕上打印当前 DAG 运行的图表。
默认值:False
- --save-dagrun
在完成回填后,将当前 DAG 运行的图表保存到指定文件。
- --show-dagrun
在完成回填后,显示当前 DAG 运行的图表。
图表采用 DOT 语言
默认值:False
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
触发器¶
触发新的 DAG 运行。如果 DAG 已暂停,则 dagrun 状态将保持排队,并且任务不会运行。
airflow dags trigger [-h] [-c CONF] [-e EXEC_DATE] [--no-replace-microseconds]
[-o table, json, yaml, plain] [-r RUN_ID] [-S SUBDIR]
[-v]
dag_id
- dag_id
dag 的 ID
- -c, --conf
序列化为 DagRun 的 conf 属性的 JSON 字符串
- -e, --exec-date
DAG 的执行日期
- --no-replace-microseconds
是否应将微秒归零
默认值:True
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -r, --run-id
帮助识别此次运行
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
取消暂停¶
恢复一个或多个 DAG。此命令允许恢复指定 DAG 的执行,从而启用进一步的任务调度。使用 –treat-dag-id-as-regex 将 –dag-id 视为正则表达式模式来定位多个 DAG。
airflow dags unpause [-h] [-o table, json, yaml, plain] [-S SUBDIR]
[--treat-dag-id-as-regex] [-v] [-y]
dag_id
- dag_id
dag 的 ID
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- --treat-dag-id-as-regex
如果设置,dag_id 将被视为正则表达式,而不是精确字符串
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
数据库¶
数据库操作
airflow db [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:检查、检查迁移、清理、降级、删除存档、导出存档、初始化、迁移、重置、shell、升级
子命令¶
检查¶
检查数据库是否可以访问
airflow db check [-h] [--retry RETRY] [--retry-delay RETRY_DELAY] [-v]
- --retry
失败时重试数据库检查
默认值:0
- --retry-delay
重试之间的等待时间(以秒为单位)
默认值:1
- -v,--verbose
使日志输出更详细
默认值:False
检查迁移¶
检查迁移是否已完成(或持续检查直至超时)
airflow db check-migrations [-h] [-t MIGRATION_WAIT_TIMEOUT] [-v]
- -t, --migration-wait-timeout
等待数据库迁移的超时时间
默认值:60
- -v,--verbose
使日志输出更详细
默认值:False
清理¶
清除元存储表中的旧记录
airflow db clean [-h] --clean-before-timestamp CLEAN_BEFORE_TIMESTAMP
[--dry-run] [--skip-archive] [-t TABLES] [-v] [-y]
- --clean-before-timestamp
应清除数据之前的数据或时间戳。如果未提供时区信息,则假定日期采用 Airflow 默认时区。示例:'2022-01-01 00:00:00+01:00'
- --dry-run
执行空运行
默认值:False
- --skip-archive
不要在存档表中保留已清除的记录。
默认值:False
- -t, --tables
要对其执行维护的表名(使用逗号分隔列表)。选项:['callback_request', 'celery_taskmeta', 'celery_tasksetmeta', 'dag', 'dag_run', 'dataset_event', 'import_error', 'job', 'log', 'session', 'sla_miss', 'task_fail', 'task_instance', 'task_reschedule', 'trigger', 'xcom']
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
降级¶
降级元数据数据库的架构。您必须提供 –to-revision 或 –to-version。要打印但不执行命令,请使用选项 –show-sql-only。如果使用选项 –from-revision 或 –from-version,则还必须使用 –show-sql-only,因为如果实际*运行*迁移,我们应该只从*当前* Alembic 版本进行迁移。
airflow db downgrade [-h] [--from-revision FROM_REVISION]
[--from-version FROM_VERSION] [-s] [-r TO_REVISION]
[-n TO_VERSION] [-v] [-y]
- --from-revision
(可选)如果生成 sql,则可以提供*来自* Alembic 版本
- --from-version
(可选)如果生成 sql,则可以提供*来自* 版本
- -s, --show-sql-only
不要实际运行迁移;只打印用于离线迁移的 sql 脚本。如果使用 –from-revision 或 –from-version,则为必需。
默认值:False
- -r, --to-revision
要降级到的 Alembic 版本。注意:必须提供 –to-revision 或 –to-version。
- -n, --to-version
(可选)如果提供,则只运行到此版本的迁移。
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
删除存档¶
删除通过 db clean 命令创建的存档表
airflow db drop-archived [-h] [-t TABLES] [-y]
- -t, --tables
要对其执行维护的表名(使用逗号分隔列表)。选项:['callback_request', 'celery_taskmeta', 'celery_tasksetmeta', 'dag', 'dag_run', 'dataset_event', 'import_error', 'job', 'log', 'session', 'sla_miss', 'task_fail', 'task_instance', 'task_reschedule', 'trigger', 'xcom']
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
导出存档¶
从存档表中导出存档数据
airflow db export-archived [-h] [--drop-archives] [--export-format {csv}]
--output-path DIRPATH [-t TABLES] [-y]
- --drop-archives
导出后删除存档表。请谨慎使用。
默认值:False
- --export-format
可能的选择:csv
用于导出已清理数据的文件格式
默认值:"csv"
- --output-path
用于导出已清理数据的输出目录的路径。此目录必须存在。
- -t, --tables
要对其执行维护的表名(使用逗号分隔列表)。选项:['callback_request', 'celery_taskmeta', 'celery_tasksetmeta', 'dag', 'dag_run', 'dataset_event', 'import_error', 'job', 'log', 'session', 'sla_miss', 'task_fail', 'task_instance', 'task_reschedule', 'trigger', 'xcom']
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
迁移¶
迁移元数据数据库的架构。如果数据库不存在,则创建数据库。要打印但不执行命令,请使用选项 --show-sql-only
。如果使用选项 --from-revision
或 --from-version
,则还必须使用 --show-sql-only
,因为如果实际*运行*迁移,我们应该只从*当前* Alembic 版本进行迁移。
airflow db migrate [-h] [--from-revision FROM_REVISION]
[--from-version FROM_VERSION] [-s] [-r TO_REVISION]
[-n TO_VERSION] [-m] [-v]
- --from-revision
(可选)如果生成 sql,则可以提供*来自* Alembic 版本
- --from-version
(可选)如果生成 sql,则可以提供*来自* 版本
- -s, --show-sql-only
不要实际运行迁移;只打印用于离线迁移的 sql 脚本。如果使用 –from-revision 或 –from-version,则为必需。
默认值:False
- -r, --to-revision
(可选)如果提供,则只运行到并包括此 Alembic 版本的迁移。
- -n, --to-version
(可选)要升级到的 Airflow 版本。注意:必须提供 –to-revision 或 –to-version。
- -m, --use-migration-files
使用迁移文件执行迁移
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
重置¶
销毁并重建元数据数据库
airflow db reset [-h] [-s] [-m] [-v] [-y]
- -s, --skip-init
只删除表;不执行数据库初始化。
默认值:False
- -m, --use-migration-files
使用迁移文件执行迁移
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
升级¶
未记录
airflow db upgrade [-h] [--from-revision FROM_REVISION]
[--from-version FROM_VERSION] [-s] [-r TO_REVISION]
[-n TO_VERSION] [-m] [-v]
- --from-revision
(可选)如果生成 sql,则可以提供*来自* Alembic 版本
- --from-version
(可选)如果生成 sql,则可以提供*来自* 版本
- -s, --show-sql-only
不要实际运行迁移;只打印用于离线迁移的 sql 脚本。如果使用 –from-revision 或 –from-version,则为必需。
默认值:False
- -r, --to-revision
(可选)如果提供,则只运行到并包括此 Alembic 版本的迁移。
- -n, --to-version
(可选)要升级到的 Airflow 版本。注意:必须提供 –to-revision 或 –to-version。
- -m, --use-migration-files
使用迁移文件执行迁移
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
信息¶
显示有关当前 Airflow 和环境的信息
airflow info [-h] [--anonymize] [--file-io] [-o table, json, yaml, plain] [-v]
命名参数¶
- --anonymize
最大程度地减少任何个人身份信息。与他人共享输出时使用它。
默认值:False
- --file-io
将输出发送到 file.io 服务并返回链接。
默认值:False
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
内部 API¶
启动 Airflow 内部 API 实例
airflow internal-api [-h] [-A ACCESS_LOGFILE] [-L ACCESS_LOGFORMAT] [-D] [-d]
[-E ERROR_LOGFILE] [-H HOSTNAME] [-l LOG_FILE]
[--pid [PID]] [-p PORT] [--ssl-cert SSL_CERT]
[--ssl-key SSL_KEY] [--stderr STDERR] [--stdout STDOUT]
[-t WORKER_TIMEOUT] [-k {sync,eventlet,gevent,tornado}]
[-w WORKERS]
命名参数¶
- -A, --access-logfile
用于存储访问日志的日志文件。使用 '-' 打印到标准输出
- -L, --access-logformat
gunicorn 日志的访问日志格式
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -d, --debug
在调试模式下使用 Flask 附带的服务器
默认值:False
- -E, --error-logfile
用于存储错误日志的日志文件。使用 '-' 打印到标准错误
- -H, --hostname
设置运行 Web 服务器的主机名
默认值:"0.0.0.0"
- -l, --log-file
日志文件的位置
- --pid
PID 文件位置
- -p, --port
运行服务器的端口
默认值:9080
- --ssl-cert
Web 服务器的 SSL 证书路径
默认值:""
- --ssl-key
与 SSL 证书一起使用的密钥路径
默认值:""
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -t, --worker-timeout
等待内部 API 工作线程的超时时间
默认值:120
- -k, --workerclass
可能的选择:sync、eventlet、gevent、tornado
用于 Gunicorn 的工作线程类
默认值:"sync"
- -w, --workers
运行内部 API 的工作线程数
默认值:4
作业¶
管理作业
airflow jobs [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:检查
子命令¶
检查¶
检查作业是否仍在运行
airflow jobs check [-h] [--allow-multiple] [--hostname HOSTNAME]
[--job-type {BackfillJob,LocalTaskJob,SchedulerJob,TriggererJob,DagProcessorJob}]
[--limit LIMIT] [--local] [-v]
- --allow-multiple
如果传递此参数,即使找到多个匹配的活动作业,此命令也会成功。
默认值:False
- --hostname
将检查其主机名的作业。
- --job-type
可能的选择:BackfillJob、LocalTaskJob、SchedulerJob、TriggererJob、DagProcessorJob
将检查其类型的作业。
- --limit
将检查的最近作业数。要禁用限制,请设置为 0。
默认值:1
- --local
如果传递此参数,则此命令将只显示来自本地主机的作业(主机名与 hostname_callable 返回值匹配的作业)。
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
示例:要检查本地调度程序是否仍在正常工作,请运行
$ airflow jobs check –job-type SchedulerJob –local”
要在使用高可用性时检查是否有任何调度程序正在运行,请运行
$ airflow jobs check –job-type SchedulerJob –allow-multiple –limit 100
kerberos¶
启动 kerberos 票证续订程序
airflow kerberos [-h] [-D] [-k [KEYTAB]] [-l LOG_FILE] [-o] [--pid [PID]]
[--stderr STDERR] [--stdout STDOUT] [-v]
[principal]
位置参数¶
- 主体
kerberos 主体
命名参数¶
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -k, --keytab
密钥表
默认值:"airflow.keytab"
- -l, --log-file
日志文件的位置
- -o, --one-time
运行一次性 Airflow kerberos,而不是永远运行
默认值:False
- --pid
PID 文件位置
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -v,--verbose
使日志输出更详细
默认值:False
插件¶
转储有关已加载插件的信息
airflow plugins [-h] [-o table, json, yaml, plain] [-v]
命名参数¶
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
资源池¶
管理资源池
airflow pools [-h] COMMAND ...
位置参数¶
- 命令
可选值:delete、export、get、import、list、set
子命令¶
delete¶
删除资源池
airflow pools delete [-h] [-o table, json, yaml, plain] [-v] NAME
- 名称
资源池名称
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
export¶
导出所有资源池
airflow pools export [-h] [-v] FILEPATH
- 文件路径
将所有资源池导出到 JSON 文件
- -v,--verbose
使日志输出更详细
默认值:False
get¶
获取资源池大小
airflow pools get [-h] [-o table, json, yaml, plain] [-v] NAME
- 名称
资源池名称
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
import¶
导入资源池
airflow pools import [-h] [-v] FILEPATH
- 文件路径
从 JSON 文件导入资源池。示例格式
{ "pool_1": {"slots": 5, "description": "", "include_deferred": true}, "pool_2": {"slots": 10, "description": "test", "include_deferred": false} }
- -v,--verbose
使日志输出更详细
默认值:False
list¶
列出资源池
airflow pools list [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
set¶
配置资源池
airflow pools set [-h] [--include-deferred] [-o table, json, yaml, plain] [-v]
NAME slots description
- 名称
资源池名称
- slots
资源池插槽
- description
资源池描述
- --include-deferred
在计算资源池时包含延迟任务
默认值:False
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
提供程序¶
显示提供程序
airflow providers [-h] COMMAND ...
位置参数¶
- 命令
可选值:auth、auth-managers、behaviours、configs、executors、get、hooks、lazy-loaded、links、list、logging、notifications、secrets、triggers、widgets
子命令¶
auth¶
获取有关提供的 API 身份验证后端的信
airflow providers auth [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
auth-managers¶
获取有关提供的身份验证管理器的信
airflow providers auth-managers [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
behaviours¶
获取有关具有自定义行为的已注册连接类型的信
airflow providers behaviours [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
configs¶
获取有关提供程序配置的信
airflow providers configs [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
executors¶
获取有关提供的执行程序的信
airflow providers executors [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
get¶
获取有关提供程序的详细信息
airflow providers get [-h] [--color {auto,on,off}] [-f]
[-o table, json, yaml, plain] [-v]
provider_name
- provider_name
提供程序名称,获取提供程序信息所需
- --color
可能的选择:自动、开启、关闭
是否输出彩色输出(默认值:自动)
默认值:“自动”
- -f, --full
有关提供程序的完整信息,包括文档信息。
默认值:False
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
hooks¶
列出已注册的提供程序钩子
airflow providers hooks [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
lazy-loaded¶
检查提供程序配置是否已延迟加载
airflow providers lazy-loaded [-h] [-v]
- -v,--verbose
使日志输出更详细
默认值:False
links¶
列出提供程序注册的额外链接
airflow providers links [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
list¶
列出已安装的提供程序
airflow providers list [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
logging¶
获取有关提供的任务日志记录处理程序的信
airflow providers logging [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
notifications¶
获取有关提供的通知的信
airflow providers notifications [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
secrets¶
获取有关提供的密钥后端的信
airflow providers secrets [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
角色¶
管理角色
airflow roles [-h] COMMAND ...
位置参数¶
- 命令
可选值:add-perms、create、del-perms、delete、export、import、list
子命令¶
add-perms¶
添加角色权限
airflow roles add-perms [-h] -a [ACTION [ACTION ...]] -r
[RESOURCE [RESOURCE ...]] [-v]
[role [role ...]]
- role
角色名称
- -a, --action
权限操作
- -r, --resource
权限名称
- -v,--verbose
使日志输出更详细
默认值:False
create¶
创建角色
airflow roles create [-h] [-v] [role [role ...]]
- role
角色名称
- -v,--verbose
使日志输出更详细
默认值:False
del-perms¶
删除角色权限
airflow roles del-perms [-h] [-a [ACTION [ACTION ...]]] -r
[RESOURCE [RESOURCE ...]] [-v]
[role [role ...]]
- role
角色名称
- -a, --action
权限操作
- -r, --resource
权限名称
- -v,--verbose
使日志输出更详细
默认值:False
delete¶
删除角色
airflow roles delete [-h] [-v] [role [role ...]]
- role
角色名称
- -v,--verbose
使日志输出更详细
默认值:False
export¶
将角色(不含权限)从数据库导出到 JSON 文件
airflow roles export [-h] [-p] [-v] file
- 文件
将所有角色导出到 JSON 文件
- -p, --pretty
通过对角色名称进行排序并使用 4 个空格缩进,来格式化输出的 JSON 文件
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
轮换 Fernet 密钥¶
轮换所有加密的连接凭据和变量;请参阅 https://airflow.apache.org/docs/apache-airflow/stable/howto/secure-connections.html#rotating-encryption-keys
airflow rotate-fernet-key [-h]
调度器¶
启动调度器实例
airflow scheduler [-h] [-D] [-p] [-l LOG_FILE] [-n NUM_RUNS] [--pid [PID]]
[-s] [--stderr STDERR] [--stdout STDOUT] [-S SUBDIR] [-v]
命名参数¶
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -p, --do-pickle
尝试序列化 DAG 对象以发送给工作器,而不是让工作器运行其代码版本
默认值:False
- -l, --log-file
日志文件的位置
- -n, --num-runs
设置在退出前要执行的运行次数
默认值:-1
- --pid
PID 文件位置
- -s, --skip-serve-logs
不要与工作进程一起启动服务日志进程
默认值:False
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
信号
SIGUSR2:转储执行程序正在跟踪的任务状态的快照。
- 示例
pkill -f -USR2 “airflow scheduler”
同步权限¶
更新现有角色和可选 DAG 的权限
airflow sync-perm [-h] [--include-dags] [-v]
命名参数¶
- --include-dags
如果传递,则 DAG 特定权限也将同步。
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
任务¶
管理任务
airflow tasks [-h] COMMAND ...
位置参数¶
- 命令
可选值:clear、failed-deps、list、render、run、state、states-for-dag-run、test
子命令¶
clear¶
清除一组任务实例,就好像它们从未运行过一样
airflow tasks clear [-h] [-R] [-d] [-e END_DATE] [-X] [-x] [-f] [-r]
[-s START_DATE] [-S SUBDIR] [-t TASK_REGEX] [-u] [-v] [-y]
dag_id
- dag_id
dag 的 ID
- -R, --dag-regex
将 dag_id 作为正则表达式搜索,而不是精确字符串
默认值:False
- -d, --downstream
包含下游任务
默认值:False
- -e, --end-date
覆盖结束日期 YYYY-MM-DD
- -X, --exclude-parentdag
如果清除的任务是子 DAG 的一部分,则排除父 DAG
默认值:False
- -x, --exclude-subdags
排除子 DAG
默认值:False
- -f, --only-failed
仅失败的作业
默认值:False
- -r, --only-running
仅运行中的作业
默认值:False
- -s, --start-date
覆盖开始日期 YYYY-MM-DD
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -t, --task-regex
用于过滤特定 task_id 的正则表达式(可选)
- -u, --upstream
包含上游任务
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
- -y, --yes
不提示确认。请谨慎使用!
默认值:False
failed-deps¶
从调度器的角度返回任务实例未满足的依赖关系。换句话说,为什么任务实例没有被调度器调度然后排队,然后由执行器运行。
airflow tasks failed-deps [-h] [--map-index MAP_INDEX] [-S SUBDIR] [-v]
dag_id task_id execution_date_or_run_id
- dag_id
dag 的 ID
- task_id
任务的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID
- --map-index
映射的任务索引
默认值:-1
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
list¶
列出 DAG 中的任务
airflow tasks list [-h] [-S SUBDIR] [-t] [-v] dag_id
- dag_id
dag 的 ID
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -t, --tree
树状视图
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
render¶
渲染任务实例的模板
airflow tasks render [-h] [--map-index MAP_INDEX] [-S SUBDIR] [-v]
dag_id task_id execution_date_or_run_id
- dag_id
dag 的 ID
- task_id
任务的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID
- --map-index
映射的任务索引
默认值:-1
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
run¶
运行单个任务实例
airflow tasks run [-h] [--cfg-path CFG_PATH] [-d {check,wait,ignore}] [-f]
[-A] [-i] [-I] [-N] [-l] [--map-index MAP_INDEX] [-m]
[-p PICKLE] [--pool POOL] [--read-from-db] [--ship-dag]
[-S SUBDIR] [-v]
dag_id task_id execution_date_or_run_id
- dag_id
dag 的 ID
- task_id
任务的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID
- --cfg-path
要使用的配置文件的路径,而不是 airflow.cfg
- -d, --depends-on-past
可能的选择:check、wait、ignore
确定 Airflow 应如何处理过去的依赖关系。默认操作是 check,Airflow 会在运行之前检查具有 depends_on_past=True 的任务是否满足过去的依赖关系,如果提供 ignore,则将忽略过去的依赖关系,如果提供 wait 并且 depends_on_past=True,则 Airflow 将等待过去的依赖关系,直到它们得到满足,然后再运行或跳过任务
默认值:“check”
- -f, --force
忽略先前的任务实例状态,无论任务是否已成功/失败,都将重新运行
默认值:False
- -A, --ignore-all-dependencies
忽略所有非关键依赖项,包括 ignore_ti_state 和 ignore_task_deps
默认值:False
- -i, --ignore-dependencies
忽略特定于任务的依赖项,例如上游、depends_on_past 和重试延迟依赖项
默认值:False
- -I, --ignore-depends-on-past
已弃用 – 请改用 –depends-on-past ignore。忽略 depends_on_past 依赖项(但尊重上游依赖项)
默认值:False
- -N, --interactive
不捕获标准输出和错误流(对交互式调试很有用)
默认值:False
- -l, --local
使用 LocalExecutor 运行任务
默认值:False
- --map-index
映射的任务索引
默认值:-1
- -m, --mark-success
将作业标记为成功,而不运行它们
默认值:False
- -p, --pickle
整个 dag 的序列化 pickle 对象(内部使用)
- --pool
要使用的资源池
- --read-from-db
从数据库而不是 dag 文件读取 dag
默认值:False
- --ship-dag
将 DAG 序列化(pickle)并将其发送给工作器
默认值:False
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
state¶
获取任务实例的状态
airflow tasks state [-h] [--map-index MAP_INDEX] [-S SUBDIR] [-v]
dag_id task_id execution_date_or_run_id
- dag_id
dag 的 ID
- task_id
任务的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID
- --map-index
映射的任务索引
默认值:-1
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -v,--verbose
使日志输出更详细
默认值:False
states-for-dag-run¶
获取 dag 运行中所有任务实例的状态
airflow tasks states-for-dag-run [-h] [-o table, json, yaml, plain] [-v]
dag_id execution_date_or_run_id
- dag_id
dag 的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
test¶
测试任务实例。这将运行一个任务,而不检查依赖关系或在数据库中记录其状态
airflow tasks test [-h] [-n] [--env-vars ENV_VARS] [--map-index MAP_INDEX]
[-m] [-S SUBDIR] [-t TASK_PARAMS] [-v]
dag_id task_id [execution_date_or_run_id]
- dag_id
dag 的 ID
- task_id
任务的 ID
- execution_date_or_run_id
DAG 的执行日期或 DAGRun 的运行 ID(可选)
- -n, --dry-run
对每个任务执行空运行。仅渲染每个任务的模板字段,不执行其他任何操作
默认值:False
- --env-vars
为 JSON 字典中提供的每个条目在解析时间和运行时设置环境变量
- --map-index
映射的任务索引
默认值:-1
- -m, --post-mortem
对未捕获的异常打开调试器
默认值:False
- -S, --subdir
从中查找 dag 的文件位置或目录。默认为“[AIRFLOW_HOME]/dags”,其中 [AIRFLOW_HOME] 是您在“airflow.cfg”中设置的“AIRFLOW_HOME”配置的值
默认值:“[AIRFLOW_HOME]/dags”
- -t, --task-params
向任务发送 JSON 参数字典
- -v,--verbose
使日志输出更详细
默认值:False
triggerer¶
启动 triggerer 实例
airflow triggerer [-h] [--capacity CAPACITY] [-D] [-l LOG_FILE] [--pid [PID]]
[-s] [--stderr STDERR] [--stdout STDOUT] [-v]
命名参数¶
- --capacity
Triggerer 一次运行的最大触发器数量。
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -l, --log-file
日志文件的位置
- --pid
PID 文件位置
- -s, --skip-serve-logs
不要与工作进程一起启动服务日志进程
默认值:False
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -v,--verbose
使日志输出更详细
默认值:False
users¶
管理用户
airflow users [-h] COMMAND ...
位置参数¶
- 命令
可能的选择:add-role、create、delete、export、import、list、remove-role、reset-password
子命令¶
add-role¶
向用户添加角色
airflow users add-role [-h] [-e EMAIL] -r ROLE [-u USERNAME] [-v]
- -e, --email
用户的电子邮件
- -r, --role
用户的角色。现有角色包括管理员、用户、操作员、查看者和公共
- -u, --username
用户的用户名
- -v,--verbose
使日志输出更详细
默认值:False
create¶
创建用户
airflow users create [-h] -e EMAIL -f FIRSTNAME -l LASTNAME [-p PASSWORD] -r
ROLE [--use-random-password] -u USERNAME [-v]
- -e, --email
用户的电子邮件
- -f, --firstname
用户的名字
- -l, --lastname
用户的姓氏
- -p, --password
用户的密码,需要在没有 –use-random-password 的情况下创建用户
- -r, --role
用户的角色。现有角色包括管理员、用户、操作员、查看者和公共
- --use-random-password
不要求输入密码。改用随机字符串。需要在没有 –password 的情况下创建用户
默认值:False
- -u, --username
用户的用户名
- -v,--verbose
使日志输出更详细
默认值:False
示例:要创建一个角色为“管理员”且用户名为“admin”的用户,请运行
- $ airflow users create
–username admin –firstname 名 –lastname 姓 –role Admin –email admin@example.org
delete¶
删除用户
airflow users delete [-h] [-e EMAIL] [-u USERNAME] [-v]
- -e, --email
用户的电子邮件
- -u, --username
用户的用户名
- -v,--verbose
使日志输出更详细
默认值:False
export¶
导出所有用户
airflow users export [-h] [-v] FILEPATH
- 文件路径
将所有用户导出到 JSON 文件
- -v,--verbose
使日志输出更详细
默认值:False
import¶
导入用户
airflow users import [-h] [-v] FILEPATH
- 文件路径
从 JSON 文件导入用户。示例格式
[ { "email": "[email protected]", "firstname": "Jon", "lastname": "Doe", "roles": ["Public"], "username": "jondoe" } ]
- -v,--verbose
使日志输出更详细
默认值:False
list¶
列出用户
airflow users list [-h] [-o table, json, yaml, plain] [-v]
- -o,--output
可能的选择:表格、json、yaml、纯文本
输出格式。允许的值:json、yaml、plain、table(默认值:table)
默认值:“table”
- -v,--verbose
使日志输出更详细
默认值:False
remove-role¶
从用户中删除角色
airflow users remove-role [-h] [-e EMAIL] -r ROLE [-u USERNAME] [-v]
- -e, --email
用户的电子邮件
- -r, --role
用户的角色。现有角色包括管理员、用户、操作员、查看者和公共
- -u, --username
用户的用户名
- -v,--verbose
使日志输出更详细
默认值:False
reset-password¶
重置用户的密码
airflow users reset-password [-h] [-e EMAIL] [-p PASSWORD]
[--use-random-password] [-u USERNAME] [-v]
- -e, --email
用户的电子邮件
- -p, --password
用户的密码,需要在没有 –use-random-password 的情况下创建用户
- --use-random-password
不要求输入密码。改用随机字符串。需要在没有 –password 的情况下创建用户
默认值:False
- -u, --username
用户的用户名
- -v,--verbose
使日志输出更详细
默认值:False
示例:要重置用户名为“admin”的用户,请运行
- $ airflow users reset-password
–username admin
variables¶
管理变量
airflow variables [-h] COMMAND ...
位置参数¶
- 命令
可选值:delete、export、get、import、list、set
子命令¶
delete¶
删除变量
airflow variables delete [-h] [-v] key
- key
变量键
- -v,--verbose
使日志输出更详细
默认值:False
export¶
可以使用以下命令在 STDOUT 中导出所有变量:airflow variables export -
airflow variables export [-h] [-v] file
- 文件
将所有变量导出到 JSON 文件
- -v,--verbose
使日志输出更详细
默认值:False
get¶
获取变量
airflow variables get [-h] [-d VAL] [-j] [-v] key
- key
变量键
- -d, --default
如果变量不存在,则返回默认值
- -j, --json
反序列化 JSON 变量
默认值:False
- -v,--verbose
使日志输出更详细
默认值:False
import¶
导入变量
airflow variables import [-h] [-a {overwrite,fail,skip}] [-v] file
- 文件
从 JSON 文件导入变量
- -a, --action-on-existing-key
可能的选择:overwrite、fail、skip
如果遇到已存在的变量键,要采取的操作。
默认值:“overwrite”
- -v,--verbose
使日志输出更详细
默认值:False
webserver¶
启动 Airflow Web 服务器实例
airflow webserver [-h] [-A ACCESS_LOGFILE] [-L ACCESS_LOGFORMAT] [-D] [-d]
[-E ERROR_LOGFILE] [-H HOSTNAME] [-l LOG_FILE] [--pid [PID]]
[-p PORT] [--ssl-cert SSL_CERT] [--ssl-key SSL_KEY]
[--stderr STDERR] [--stdout STDOUT] [-t WORKER_TIMEOUT]
[-k {sync,eventlet,gevent,tornado}] [-w WORKERS]
命名参数¶
- -A, --access-logfile
用于存储 Web 服务器访问日志的日志文件。使用“-”打印到标准输出
默认值:“-”
- -L, --access-logformat
gunicorn 日志的访问日志格式
默认值:""
- -D, --daemon
守护进程化,而不是在前台运行
默认值:False
- -d, --debug
在调试模式下使用 Flask 附带的服务器
默认值:False
- -E, --error-logfile
用于存储 Web 服务器错误日志的日志文件。使用“-”打印到标准错误
默认值:“-”
- -H, --hostname
设置运行 Web 服务器的主机名
默认值:"0.0.0.0"
- -l, --log-file
日志文件的位置
- --pid
PID 文件位置
- -p, --port
运行服务器的端口
默认值:8080
- --ssl-cert
Web 服务器的 SSL 证书路径
默认值:""
- --ssl-key
与 SSL 证书一起使用的密钥路径
默认值:""
- --stderr
将 stderr 重定向到此文件
- --stdout
将 stdout 重定向到此文件
- -t, --worker-timeout
等待 Web 服务器工作进程的超时时间
默认值:120
- -k, --workerclass
可能的选择:sync、eventlet、gevent、tornado
用于 Gunicorn 的工作线程类
默认值:"sync"
- -w, --workers
运行 Web 服务器的工作进程数量
默认值:4
环境变量¶
- AIRFLOW__{SECTION}__{KEY}¶
在 Airflow 配置中设置选项。这优先于
airflow.cfg
文件中的值。将
{SECTION}
占位符替换为任何部分,将{KEY}
占位符替换为该指定部分中的任何键。例如,如果要设置
[core]
部分中的dags_folder
选项,则应设置AIRFLOW__CORE__DAGS_FOLDER
环境变量。更多信息,请参阅:设置配置选项。
- AIRFLOW__{SECTION}__{KEY}_CMD¶
对于 Airflow 中某个部分的任何特定键,执行该键指向的命令。命令的结果将用作
AIRFLOW__{SECTION}__{KEY}
环境变量的值。只有以下配置选项支持此功能
[database]
部分中的sql_alchemy_conn
[core]
部分中的fernet_key
[celery]
部分中的broker_url
[celery]
部分中的flower_basic_auth
[celery]
部分中的result_backend
[atlas]
部分中的password
[smtp]
部分中的smtp_password
[webserver]
部分中的secret_key
- AIRFLOW__{SECTION}__{KEY}_SECRET¶
对于 Airflow 中某个部分的任何特定键,从配置的密钥后端检索密钥。返回的值将用作
AIRFLOW__{SECTION}__{KEY}
环境变量的值。有关可用密钥后端的更多信息,请参阅 密钥后端。
这种形式的环境变量配置仅支持与
AIRFLOW__{SECTION}__{KEY}_CMD
相同的配置选项子集
- AIRFLOW_CONFIG¶
Airflow 配置文件的路径。
- AIRFLOW_CONN_{CONN_ID}¶
使用 URI 值定义一个名为
{CONN_ID}
的新连接。例如,如果要创建一个名为
PROXY_POSTGRES_TCP
的连接,可以创建一个名为AIRFLOW_CONN_PROXY_POSTGRES_TCP
的键,并将连接 URI 作为其值。更多信息,请参阅:在环境变量中存储连接。
- AIRFLOW_HOME¶
Airflow 内容的根目录。这是 Airflow 资源(如 DAG 和日志)的默认父目录。