标题: airflow中log表详解
日期: 2021-11-08 21:03:15
标签: [airflow, log]
分类: 调度系统
上次介绍了airflow元数据库表的大致作用,是干什么的,存储了哪些信息,接下来,我们就来一个一个介绍,表里面的字段是什么意思,我们怎么使用。
这是表结构:
field | type | null | key | default | extra |
---|---|---|---|---|---|
id | int(11) | NO | PRI | (NULL) | auto_increment |
dttm | timestamp(6) | YES | |||
dag_id | varchar(250) | YES | MUL | ||
task_id | varchar(250) | YES | |||
event | varchar(30) | YES | |||
execution_date | timestamp(6) | YES | |||
owner | varchar(500) | YES | |||
extra | text | YES |
下面来一个个字段介绍。
- id:自增主键
- dttm:操作时间
- dag_id:操作的dag_id,有可能为空,因为如果是airflow自动调度,或者是在命令行操作airflow,不针对某个单独的dag时,此字段就是空的;
- task_id:类似dag_id,操作的不是task,那么该字段就是空的;
- event:
event | description |
---|---|
clear | airflow页面上clear dag_run或者clear task,该动作是人为操作 |
cli_clear | airflow命令方式clear dagrun:airflow clear dag_id -s start_date -e end_date |
cli_create_user | airflow create_user命令创建用户 |
cli_flower | airflow flower命令启动flower监控 |
cli_run | airflow命令run dag |
cli_scheduler | airflow scheduler命令启动scheduler |
cli_serve_logs | airflow worker命令启动日志服务 |
cli_upgradedb | airflow upgradedb命令升级数据库 |
cli_version | airflow version命令查看版本 |
cli_webserver | airflow webserver命令启动webserver服务 |
cli_worker | airflow worker命令启动worker |
dagrun_success | airflow页面标记dagrun为success的动作,该动作是人为操作 |
delete | airflow页面删除dag,该动作是人为操作 |
duration | airflow页面查看task运行时长,该动作是人为操作 |
extra_links | airflow页面查看task的超链接,该动作是人为操作 |
failed | airflow页面标记task失败,该动作是人为操作 |
gantt | airflow页面查看task的甘特图,该动作是人为操作 |
get_logs_with_metadata | 不知道,应该跟查看日志有关 |
graph | airflow页面查看graph图,该动作是人为操作 |
landing_times | airflow页面查看task运行结束时间统计图,该动作是人为操作 |
log | airflow页面查看日志,该动作是人为操作 |
paused | airflow页面on/off dag,该动作是人为操作 |
refresh | airflow页面refresh刷新dag,该动作是人为操作 |
rendered | airflow页面查看渲染的变量,该动作是人为操作 |
run | airflow页面run某个task,该动作是人为操作 |
running | airflow调度task,将task标记为running的动作,该动作是系统操作 |
success | airflow页面标记task为success的动作,该动作是人为操作 |
task | 不知道,airflow task,应该是记录的airflow的task |
tree | airflow页面查看task结构树,该动作是人为操作 |
tries | airflow页面查看task重试次数,该动作是人为操作 |
trigger | airflow页面trigger dag任务,该动作是人为操作 |
xcom | airflow页面查看task push或者pull的变量,xcom的功能后面讲如何使用,作用就是task之间传递数据用的功能。 |
- execution_date:dag的计划执行时间
- owner:操作的airflow用户,如果是命令操作,则是linux用户
- extra:记录的是操作日志的命令信息
总结:
- cli_前缀的event,标识通过命令方式操作airflow;
- 用户在页面的操作,每一个点击都会被记录为日志;
- airflow scheduler worker两个角色也可以认为是用户,也有对dag、task的操作记录;
好了,airflow元数据表log介绍完了。
有什么问题或者疑问,都可以跟我发邮件,欢迎一起讨论。
我会将三年的airflow经验分享出去,主要就是为了记录一下我的知识,并分享给你们。
后面继续介绍airflow元数据库的其他表。
再见。
书山有路勤为径,学海无涯苦作舟。
欢迎关注我的微信公众号,比较喜欢分享知识,也喜欢宠物,所以做了这2个公众号:
喜欢宠物的朋友可以关注:【电巴克宠物Pets】
一起学习,一起进步。