Google cloud composer:任务未在计划 dag 运行 中执行,但在手动 dag 运行 中成功执行

Google cloud composer: tasks not executed in scheduled dag run, but executed successfully in manual dag run

我有一个 DAG 有多个任务。当调度程序执行 DAG 时,它进入 running 状态,但 DAG 中的 none 任务具有任何状态。但是,如果手动执行相同的 DAG(Trigger Dag 按钮单击)- 任务变为 queued->running->success。 我尝试检查 Stackdriver 日志中的“Cloud Composer Environment”——但没有发现任何可疑的日志条目。还检查了气流中的任务日志 UI - 它们是空的。

为什么计划的 dag 运行卡住了?如何找出预定 DAG 问题的原因?

原因是 start_date 参数。是这样计算的:

START_DATE = datetime.datetime.now() - datetime.timedelta(hours=1)
dag = airflow.DAG(
        'data_transfer_dag',
        'catchup=False',
        default_args = {
            'owner': 'Zufar',
            'depends_on_past': False,
            'email': [''],
            'email_on_failure': False,
            'email_on_retry': False,
            'retries': 1,
            'retry_delay': datetime.timedelta(minutes=5),
            'start_date': START_DATE,
        },
        schedule_interval=datetime.timedelta(hours=1)
)

修复是使用硬编码日期:START_DATE = datetime.datetime(2020,1,1)。所以不能根据当前时间来计算。只需使用硬编码的过去日期。