为了账号安全,请及时绑定邮箱和手机立即绑定

重试时celery何时调用on_failure

重试时celery何时调用on_failure

智慧大石 2023-12-08 17:13:41
我在 celery 中使用任务继承max_retries: 3来重试( )某些异常并记录失败。是on_failure在每次失败的尝试时调用还是仅在最后一次尝试(在我的例子中是第三次)之后调用?def __call__(self, *args, **kwargs):        try:            return self.run(*args, **kwargs)        except InterfaceError as exc:            self.retry(exc=exc, countdown=5, max_retries=3)def on_failure(self, exc, task_id, args, kwargs, einfo):    log(exc)  # This is a gross simplification of the logging
查看完整描述

1 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

对此进行了测试, on_failure 仅在重试全部失败后运行。

因此,使用上面给出的示例, on_failure 在第三次失败后被调用。


查看完整回答
反对 回复 2023-12-08
  • 1 回答
  • 0 关注
  • 111 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信