我对执行日期有一些不明白的地方。我有以下问题:
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from datetime import datetime
default_args = {
'owner': 'me',
'depends_on_past': True,
'email': '[email protected]',
'email_on_failure': False,
'email_on_retry': False,
'retries': 0,
}
dag = DAG(
'dag_test',
default_args=default_args,
description="DAG test",
schedule_interval='0 15 * * *',
concurrency=1,
catchup=False,
start_date=datetime(2024, 1, 1)
)
task = BashOperator(
task_id='task',
bash_command='echo 1',
dag=dag,
)
当我激活 dag 时,它每天下午 3 点运行,但执行日期是前一天。示例:当 2 月 16 日触发 dag 时,执行日期为 2 月 15 日。
感谢您的帮助。
我希望触发日期和执行日期之间具有相同的日期。
将触发器视为设置为在未来某个时间触发的警报。当你把昨天的闹钟设置为今天,闹钟响起时,闹钟会弹出,说你昨天设置的闹钟已经响了。
这就是发生的事情,运行的执行日期是设置触发器的日期,所以是昨天的日期。