我是 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)
在运行脚本时,它没有显示任何错误但是当我检查 dags
在 Web-UI
它没有显示在 菜单- > DAGs
但我可以在 菜单-> 浏览-> 工作 下看到预定的 job
我也看不到 $AIRFLOW_HOME/dags 中的任何内容。难道只能这样吗?有人可以解释为什么吗?
原文由 Rusty 发布,翻译遵循 CC BY-SA 4.0 许可协议
您在作业页面上看到的
ScheduleJob
是调度程序的条目。那不是预定的日期。你的 \(AIRFLOW_HOME/dags 是空的,这很奇怪。所有 dags 必须位于 \)AIRFLOW_HOME/dags 目录中(特别是在您的
airflow.cfg
文件中配置的 dags 目录中)。看起来您没有将实际的 dag 存储在正确的目录(dags 目录)中。或者,有时您还需要重新启动网络服务器才能显示 dag(尽管这似乎不是这里的问题)。