DAG 在 Web UI 中不可见

新手上路,请多包涵

我是 Airflow 的新手。我正在学习教程并编写了以下代码。

 from airflow import DAG
from airflow.operators.python_operator import PythonOperator
from datetime import datetime, timedelta
from models.correctness_prediction import CorrectnessPrediction

default_args = {
    'owner': 'abc',
    'depends_on_past': False,
    'start_date': datetime.now(),
    'email': ['abc@xyz.com'],
    'email_on_failure': False,
    'email_on_retry': False,
    'retries': 1,
    'retry_delay': timedelta(minutes=5)
}

def correctness_prediction(arg):
    CorrectnessPrediction.train()

dag = DAG('daily_processing', default_args=default_args)

task_1 = PythonOperator(
    task_id='print_the_context',
    provide_context=True,
    python_callable=correctness_prediction,
    dag=dag)

在运行脚本时,它没有显示任何错误但是当我检查 dagsWeb-UI 它没有显示在 菜单- > DAGs

在此处输入图像描述

但我可以在 菜单-> 浏览-> 工作 下看到预定的 job

在此处输入图像描述

我也看不到 $AIRFLOW_HOME/dags 中的任何内容。难道只能这样吗?有人可以解释为什么吗?

原文由 Rusty 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

您在作业页面上看到的 ScheduleJob 是调度程序的条目。那不是预定的日期。

你的 \(AIRFLOW_HOME/dags 是空的,这很奇怪。所有 dags 必须位于 \)AIRFLOW_HOME/dags 目录中(特别是在您的 airflow.cfg 文件中配置的 dags 目录中)。看起来您没有将实际的 dag 存储在正确的目录(dags 目录)中。

或者,有时您还需要重新启动网络服务器才能显示 dag(尽管这似乎不是这里的问题)。

原文由 Vineet Goel 发布,翻译遵循 CC BY-SA 3.0 许可协议

运行 airflow list_dags 检查 dag 文件的位置是否正确。

出于某种原因,在执行此操作之前,我没有在浏览器 UI 中看到我的 dag。一定是浏览器缓存或其他问题。

如果这不起作用,您应该使用 airflow webserver -p 8080 -D

原文由 samu 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题