Django 芹菜任务中间件
目前,我们在应用程序中使用了大量芹菜任务,我们有一个异常,它可能会引发大量任务 我们可以在每个任务中创建一个try-and-catch块,并相应地处理这个特定的异常,但是我正在寻找一种方法来捕获任何任务中的异常(比如中间件行),以便于维护 有人能提出建议吗 我们正在使用以下版本:Django 芹菜任务中间件,django,celery,Django,Celery,目前,我们在应用程序中使用了大量芹菜任务,我们有一个异常,它可能会引发大量任务 我们可以在每个任务中创建一个try-and-catch块,并相应地处理这个特定的异常,但是我正在寻找一种方法来捕获任何任务中的异常(比如中间件行),以便于维护 有人能提出建议吗 我们正在使用以下版本: celery==3.1.18 django-celery==3.1.16 Django==1.6.5 这可以使用基本抽象任务处理程序来完成。特别是对于异常情况,有一个关于故障的处理程序 from celery imp
celery==3.1.18
django-celery==3.1.16
Django==1.6.5
这可以使用基本抽象任务处理程序来完成。特别是对于异常情况,有一个关于故障的
处理程序
from celery import Task
class MyBaseTask(Task):
abstract = True
def on_failure(self, exc, task_id, args, kwargs, einfo):
# Task failed. What do you want to do?
print('Task raised an exception: {}'.format(exc)
@app.task(base=MyBaseTask)
def my_task():
# Your task code
有关可用处理程序和传递给每个处理程序的参数的更多信息,请参阅芹菜文档:这样,当代理关闭时,我无法捕获OperationError。