34

我在一个名为(实际上是教程中提供tutorial_2.py的副本,除了更改为)的文件中定义了一个 DAG。tutorial.pyairflowdag_idtutorial_2

当我查看我的默认未修改airflow.cfg(位于 中~/airflow)时,我看到它dags_folder设置为/home/alex/airflow/dags.

我愿意cd /home/alex/airflow; mkdir dags; cd dags; cp [...]/tutorial_2.py tutorial_2.py。现在我有一个dags与 中设置的路径匹配的文件夹airflow.cfg,其中包含tutorial_2.py我之前创建的文件。

但是,当我运行时airflow list_dags,我只获得与默认教程 DAG 对应的名称。

tutorial_2想出现在我的 DAG 列表中,这样我就可以开始与之交互了。既没有python tutorial_2.pyairflow resetdb没有使它出现在列表中。

我该如何补救?

4

4 回答 4

16

我认为这是因为你还没有导出AIRFLOW_HOME. 尝试做: AIRFLOW_HOME="/home/alex/airflow/dags" airflow list_dags。如果这不起作用而不是两个步骤 export AIRFLOW_HOME="/home/alex/airflow/dags" airflow list_dags ,我相信这应该起作用。搏一搏?

于 2017-07-01T00:40:28.097 回答
6

在我的理解中,AIRFLOW_HOME应该链接到airflow.cfg存储的目录。然后,airflow.cfg可以应用并将 dag 目录设置为您放入其中的值。

重要的一点是:airflow.cfg如果你AIRFLOW_HOME没有设置,那就没用了

于 2017-07-03T06:24:43.337 回答
1

问题是您的目录中可能存在两个气流配置,因此请检查 /root/airflow/dags ,如果是,则需要更改两个 airflow.cfg 中的 dags_folder 路径

于 2019-05-02T17:16:13.663 回答
0

我可能正在使用最新的气流,命令已更改。对我有用的是:

  • export AIRFLOW_HOME="~/airflow"
  • 然后运行airflow dags list
于 2021-11-04T05:13:13.390 回答