正确定义 DAG 调度间隔
Properly Defining DAG Schedule Interval
问题:我们很难在给定的时间间隔内触发 DAG。它还可以防止手动执行 DAG。我们也在 DAG 定义中添加了 catchup=False
。
上下文:我们计划让 DAG 从 M-F 开始每隔 4 小时执行一次。我们使用以下 CRON 表达式定义了此行为:
0 0 0/4 ? * MON,TUE,WED,THU,FRI *
我们目前不确定间隔是否已正确定义,或者是否有我们忽略的额外参数。
如有任何帮助,我们将不胜感激。
我认为您要找的是 0 0/4 * * 1-5
,它将在周一至周五的每个 day-of-week 的第 4 小时从 0 点到 23 点 运行。
您的 DAG 对象可以是:
from airflow import DAG
with DAG(
dag_id="my_dag",
start_date=datetime(2022, 2, 22),
catchup=False,
schedule_interval="0 0/4 * * 1-5",
) as dag:
# add your operators here
问题:我们很难在给定的时间间隔内触发 DAG。它还可以防止手动执行 DAG。我们也在 DAG 定义中添加了 catchup=False
。
上下文:我们计划让 DAG 从 M-F 开始每隔 4 小时执行一次。我们使用以下 CRON 表达式定义了此行为:
0 0 0/4 ? * MON,TUE,WED,THU,FRI *
我们目前不确定间隔是否已正确定义,或者是否有我们忽略的额外参数。
如有任何帮助,我们将不胜感激。
我认为您要找的是 0 0/4 * * 1-5
,它将在周一至周五的每个 day-of-week 的第 4 小时从 0 点到 23 点 运行。
您的 DAG 对象可以是:
from airflow import DAG
with DAG(
dag_id="my_dag",
start_date=datetime(2022, 2, 22),
catchup=False,
schedule_interval="0 0/4 * * 1-5",
) as dag:
# add your operators here