每周星期二00:00:00运行Airflow DAG

问题描述

我正在尝试每周在Airflow(准确地说是GCP Cloud Composer)上运行DAG。 但是达格不是按我在Cron表达式中指定的那样在星期二运行。

在所有示例中,我发现schedule_interval是一个间隔(每天,每周,依此类推)。我无法弄清楚设置中可能出现的错误

default_dag_args = {
    'start_date': datetime.datetime.strptime('07/08/2020 00:00:00','%d/%m/%Y %H:%M:%s'),'depends_on_past':False,'catchup' :...,'retry_delay': ...,'project_id': ...
}
with models.DAG(
        'every_Tues_00_00',schedule_interval= "0 0 * * 2",default_args=default_dag_args) as dag:
.
.
.

解决方法

要记住的是Airflow触发任务的时间。

”例如,如果您以一天的schedule_interval运行DAG,则标记为2020-01-01的运行将在2020-01-01T23:59之后立即触发。换句话说,作业实例启动一次涵盖的期限已经结束。上下文中可用的execute_date也将是2020-01-01。” [1]

[1] https://airflow.apache.org/docs/stable/dag-run.html