无法使Airflow DAG每天在特定时间运行

时间:2020-09-16 06:39:00

标签: airflow airflow-scheduler

我正在尝试安排Airflow DAG,但无法成功完成。我有一个有效的开始日期。我想安排它每天早上5:30运行,但是我不得不在最后几天手动触发它。

这是我的计划间隔:schedule_interval='30 5 0 0 0'。我也尝试过使用其他语法,例如:schedule_interval='30 5 * * *',但无法使其正常工作。下面是我的完整代码:

default_dag_args = {
    'start_date': datetime.datetime(2020, 9, 15),
}

with models.DAG(
        'data_dump',
        schedule_interval='30 5 0 0 0',
        default_args=default_dag_args) as dag:
  
    hello = bash_operator.BashOperator(
            task_id='hello',
            bash_command='echo Hello.')

    goodbye_bash = bash_operator.BashOperator(
        task_id='bye',
        bash_command='echo Goodbye.')

    hello >> goodbye_bash

我开始怀疑,schedule_interval与时区有关吗?目前,我正在europe-west1-b中设置Airflow和Cloud Composer环境。

我需要帮助确定我的代码出了什么问题以及如何正确安排DAG,并希望您的答复。预先感谢。

1 个答案:

答案 0 :(得分:1)

@ philipp-johannis是正确的,30 5 * * *是正确的scheduler_interval

您可以按如下所示使用较旧的start_date进行测试:

with models.DAG(
        'data_dump',
        schedule_interval='30 5 0 0 0',
        start_date=datetime.datetime(2020, 9, 1)) as dag: