无法在每天的特定时间制作 Airflow DAG 运行
Unable to make Airflow DAG run at a specific time every day
我正在尝试安排 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
.
中设置的 Cloud Composer 环境中使用 Airflow
我需要帮助来弄清楚我的代码有什么问题以及如何正确安排 DAG,非常感谢您的回复。提前致谢。
@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:
我正在尝试安排 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
.
我需要帮助来弄清楚我的代码有什么问题以及如何正确安排 DAG,非常感谢您的回复。提前致谢。
@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: