airflow - 达格好像不见了
问题描述
我有一个 dag,它会定期检查要生成的新工作流(动态 DAG),如果找到,则创建它们。(参考:调度程序未添加动态 dag)
上面的 DAG 正在工作,动态 DAG 正在创建并在 Web 服务器中列出。这里有两个问题:
- 单击网页网址中的 DAG 时,显示“DAG 似乎丢失”
- 列出的 DAG 未使用“airflow list_dags”命令列出
错误:
DAG“app01_user”似乎不见了。
所有其他动态生成的 DAG 也是如此。我已经编译了 Python 脚本,没有发现任何错误。
Edit1:我尝试清除所有数据并运行“气流运行”。它运行成功,但没有将动态生成的 DAG 添加到“airflow list_dags”中。但是在运行命令“airflow list_dags”时,它会加载并执行 DAG(生成动态 DAG)。动态 DAG 也列出如下:
[root@cmnode dags]# airflow list_dags
sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8\nLANG=en_US.UTF-8)
sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8\nLANG=en_US.UTF-8)
[2019-08-13 00:34:31,692] {settings.py:182} INFO - settings.configure_orm(): Using pool settings. pool_size=15, pool_recycle=1800, pid=25386
[2019-08-13 00:34:31,877] {__init__.py:51} INFO - Using executor LocalExecutor
[2019-08-13 00:34:32,113] {__init__.py:305} INFO - Filling up the DagBag from /root/airflow/dags
/usr/lib/python2.7/site-packages/airflow/operators/bash_operator.py:70: PendingDeprecationWarning: Invalid arguments were passed to BashOperator (task_id: tst_dyn_dag). Support for passing such arguments will be dropped in Airflow 2.0. Invalid arguments were:
*args: ()
**kwargs: {'provide_context': True}
super(BashOperator, self).__init__(*args, **kwargs)
-------------------------------------------------------------------
DAGS
-------------------------------------------------------------------
app01_user
app02_user
app03_user
app04_user
testDynDags
再次运行时,上面生成的所有 4 个 dag 都消失了,只显示基本 DAG,“testDynDags”。
解决方案
当我收到此错误时,网络服务器日志中显示了一个异常。一旦我解决了该错误并重新启动了网络服务器,它就会正常运行。
据我所知,这是网络服务器尝试解析 dag 文件并且出现错误时引发的错误。在我的情况下,导入我添加到插件的新运算符是一个错误。
推荐阅读
- r - 两个变量之间的闰年
- visual-studio-2017 - 我无法使用 Visual Studio 打开我的脚本
- r - keras 错误 py_call_impl(可调用,dots$args,dots$keywords)
- php - 在函数中捕获异常,在 try-catch 中调用。不起作用,为什么?
- python - 如何修复列表错误没有足够的值来解压
- javascript - 反应原生模态总是可见的
- java - 在 Java 中,排序结果以 A、a、B、b... 的形式升序返回
- html - HTML/CSS 中下拉列表的实现
- c# - Net Core:启动类中的ILogger:封装在扩展方法中
- c++ - 我不明白为什么我得到一个错误的访问异常