在Airflow网络界面中,我可以查看DAG列表。如果我单击其中一个DAG,我可以看到DAG的不同视图或DAG的代码,在详细信息选项卡中,我可以看到DAG文件的名称,但不能看到路径。
我也试过airflow list-dags
,但这并没有提供我正在寻找的信息。
我可以在网络界面中看到一个DAG,但我找不到它在文件系统中的位置。
有没有办法从Airflow网络界面或Airflow CLI查找DAG的位置?
答案 0 :(得分:3)
在ui的主DAG列表中,DAG暂停切换左侧有一个按钮。它解析为:
https://<airflow.blah.com>/admin/dagmodel/edit/?id=<dag_id>
Fileloc
将显示气流认为您的DAG文件所在的位置。然而...
答案 1 :(得分:0)
我不这么认为,但您应该从airflow.cfg中搜索dags_folder
以找到创建dag的位置。
此外,airflow-webserver
的日志会准确地告诉您正在导入哪些文件/ dag,假设您已登录。
答案 2 :(得分:0)
特别是如果您进行开发并更改DAG /删除DAG文件,这些条目通常会在后端数据库中保留,并在UI中可见。大多数情况下,实际上不存在任何DAG文件。
我建议使用以下内容清理数据库中的DAG:
import sys
from airflow.hooks.postgres_hook import PostgresHook
dag_input = sys.argv[1]
hook=PostgresHook( postgres_conn_id= "airflow_db")
for t in ["xcom", "task_instance", "sla_miss", "log", "job", "dag_run", "dag" ]:
sql="delete from {} where dag_id='{}'".format(t, dag_input)
hook.run(sql, True)
答案 3 :(得分:0)
默认情况下,气流会提供一些样本DAG。 DAG保存在example_dags文件夹下。
DAG的路径: 的 LIB / python2.7 /站点包/气流/ example_dags 强>