如何设置导入,以便在任务正常运行时气流不显示错误

Posted

技术标签:

【中文标题】如何设置导入,以便在任务正常运行时气流不显示错误【英文标题】:How can I set up import so that airflow doesn't show errors whereas the tasks are running properly 【发布时间】:2020-07-07 10:39:39 【问题描述】:

我们正在 GCP 上使用 Cloud Composer 在 Airflow 1.10.6 上开发 ETL。一切正常,但我们不断在日志和界面中收到有关相对导入的错误消息,除非每个任务都正常运行

ERROR - Failed to import: /home/airflow/gcs/dags/filepath.py attempted relative import with no known parent package

具有相同架构和相同导入的其他文件不会产生相同的错误。运行命令imp.load_source 时,它在process_file 中失败。如果我们改为非相对导入,它也可以正常工作。

您是否知道在此process_file 中执行了哪个文件以及我们如何解决此错误(仅在日志记录中,而不是在执行中)。

感谢您的帮助

【问题讨论】:

【参考方案1】:

因此,我们发现气流出于某种不明原因将其视为 dag 并尝试将其作为 dag 导入。我们已将此文件的文件夹添加到.airflowignore 文件中,问题已解决

【讨论】:

根文件夹通常是为 dags 保留的,而模块可以放在子文件夹中,例如带有 python 模块的 dependencies 文件夹,然后可以导入

以上是关于如何设置导入,以便在任务正常运行时气流不显示错误的主要内容,如果未能解决你的问题,请参考以下文章

导入 input_data MNIST 张量流不工作

Delphi中如何监视键盘输入

如何在任务完成时更新运行结果?

不遵守 Azure Pipelines 任务超时

Windows 2008 服务器任务调度程序不运行 .bat 批处理作业 [关闭]

尽管它显示在任务栏上,但 Android Studio 模拟器无法正常工作