gpt4 book ai didi

AirFlow DAG 卡在运行状态

转载 作者:行者123 更新时间:2023-12-02 12:15:49 31 4
gpt4 key购买 nike

我创建了一个 dag 并每天安排它。它每天都会排队,但任务实际上并没有运行。这个问题过去已经提出过here但答案对我没有帮助,所以似乎还有另一个问题。

我的代码在下面分享。我用注释替换了任务 t2 的 SQL。当我使用“Airflow 测试...”在 CLI 上单独运行每一项任务时,它们都会成功运行。

您能解释一下应该做什么才能让 DAG 运行吗?谢谢!

这是 DAG 代码:

from datetime import timedelta, datetime
from airflow import DAG
from airflow.contrib.operators.bigquery_operator import BigQueryOperator



default_args = {
'owner' : 'me',
'depends_on_past' : 'true',
'start_date' : datetime(2018, 06, 25),
'email' : ['myemail@moovit.com'],
'email_on_failure':True,
'email_on_retry':False,
'retries' : 2,
'retry_delay' : timedelta(minutes=5)
}


dag = DAG('my_agg_table',
default_args = default_args,
schedule_interval = "30 4 * * *"
)



t1 = BigQueryOperator(
task_id='bq_delete_my_agg_table',
use_legacy_sql=False,
write_disposition='WRITE_TRUNCATE',
allow_large_results=True,
bql='''
delete `my_project.agg.my_agg_table`
where date = '{{ macros.ds_add(ds, -1)}}'
''',
dag=dag)

t2 = BigQueryOperator(
task_id='bq_insert_my_agg_table',
use_legacy_sql=False,
write_disposition='WRITE_APPEND',
allow_large_results=True,
bql='''
#standardSQL
Select ... the query continue here.....
''', destination_dataset_table='my_project.agg.my_agg_table',
dag=dag)


t1 >> t2

最佳答案

通常很容易找出任务未运行的原因。在 Airflow Web UI 中时:

  • 选择任何感兴趣的 DAG
  • 现在点击任务
  • 再次点击任务实例详细信息
  • 第一行有一个面板任务实例状态
  • 旁边的框中原因是运行任务的原因 - 或任务被忽略的原因

检查第一个未执行的任务通常是有意义的,因为我看到您设置了depends_on_past=True,如果在错误的场景中使用,这可能会导致问题。

更多信息请参见:Airflow 1.9.0 is queuing but not launching tasks

关于AirFlow DAG 卡在运行状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51261841/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com