Python 如何处理芹菜和弦中的错误?

Python 如何处理芹菜和弦中的错误?,python,celery,celery-canvas,Python,Celery,Celery Canvas,我试图在包含组和链的芹菜工作流中执行一些错误处理。以下示例代码描述了这种情况: from.tasks导入task_1、task_2、task_3、task_4、task_finalize、handle_error 链_1=(任务_1 |任务_2) 链_2=(任务_1 |任务_2) finalize\u group=组([task\u finalize,task\u finalize]) 链的组=组([链1,链2]) #最终工作流程的定义 工作流=(chord(任务链组,任务3.on错误(句柄错误

我试图在包含组和链的芹菜工作流中执行一些错误处理。以下示例代码描述了这种情况:

from.tasks导入task_1、task_2、task_3、task_4、task_finalize、handle_error
链_1=(任务_1 |任务_2)
链_2=(任务_1 |任务_2)
finalize\u group=组([task\u finalize,task\u finalize])
链的组=组([链1,链2])
#最终工作流程的定义
工作流=(chord(任务链组,任务3.on错误(句柄错误));任务4;完成任务组)

我只想处理“链的组”中引发的第一个异常。根据官方芹菜文档,我必须使用chord body(任务3)的on_error()方法,但handle_error根本不执行。你知道我遗漏了什么吗?

这可能是像你的任务3没有实际抛出错误这样简单的事情吗?你的
处理错误的方法是什么?你能简化你的工作流程,用一个最小的例子来说明同样的问题吗?不幸的是,这是重现行为的最简单的例子。到目前为止,我发现它似乎是有效的,当我执行以下操作时:
python工作流=(chord(一组链(task_3 | task_4)。on_error(handle_error))| finalize_group)
它可能像你的任务那样简单吗?你的
handle_error
看起来像什么?你能简化你的工作流程,用一个最小的例子来说明同样的问题吗?不幸的是,这是重现行为的最简单的例子。到目前为止,我发现它似乎是有效的,当我执行以下操作时:
python工作流=(chord(组链)(任务3 |任务4)。on_error(handle|error))| finalize|group)