Airflow dag 级别重试值是否会覆盖任务级别重试值?
Will Airflow dag level retries value override task level retries value?
我注意到一个无主机错误,并且在任务文件夹中找不到日志。我的任务已将重试设置为 3。此外,dag 已将重试设置为 1。在 dag 级别设置的重试值是否会覆盖任务重试?我注意到它在失败后没有重试。
没有 DAG 级别 retries
。
您可能对 default_args
感到困惑,它可能包含 retries
并作为以下形式传递给 DAG 承包商:
default_args = {
'retries': 4
}
with DAG(
dag_id='my_dag',
default_args=default_args,
...
) as dag:
t1 = BashOperator(
task_id='print_date',
bash_command='date',
)
t2 = BashOperator(
task_id='sleep',
bash_command='sleep 5',
retries=3,
)
default_args
是传递给 tasks 的字典,它用作为 DAG 中的所有任务设置默认值的方法。
在上面的示例中,t1
将重试 4 次,因为它是 default_args
的默认值,但 t2
将重试 3 次,因为它覆盖了默认值。
我注意到一个无主机错误,并且在任务文件夹中找不到日志。我的任务已将重试设置为 3。此外,dag 已将重试设置为 1。在 dag 级别设置的重试值是否会覆盖任务重试?我注意到它在失败后没有重试。
没有 DAG 级别 retries
。
您可能对 default_args
感到困惑,它可能包含 retries
并作为以下形式传递给 DAG 承包商:
default_args = {
'retries': 4
}
with DAG(
dag_id='my_dag',
default_args=default_args,
...
) as dag:
t1 = BashOperator(
task_id='print_date',
bash_command='date',
)
t2 = BashOperator(
task_id='sleep',
bash_command='sleep 5',
retries=3,
)
default_args
是传递给 tasks 的字典,它用作为 DAG 中的所有任务设置默认值的方法。
在上面的示例中,t1
将重试 4 次,因为它是 default_args
的默认值,但 t2
将重试 3 次,因为它覆盖了默认值。