芹菜任务没有结果写入结果后端



我有一些应该返回结果的任务,而某些任务则没有。我想强制任务不应该返回结果,不要在结果后端写任何东西(例如无)。我该如何在芹菜中实现?

例如,这是我的任务:

@app.task
def taskWithResult():
    # ...code...
    return res
@app.task
def taskWithNoResult():
    # ...code without return...

,我还有一些其他任务的特殊队列,这些任务也不返回任何结果,我可以用不得在结果后端写入的任务标记该队列吗?

从芹菜文档中您可以将忽略结果标志设置为true。http://docs.celeryproject.org/en/latest/reference/celery.app.task.html?highlight=default_retry_retry_delry_delay#celery.app.task.task.task.task.ignore_ignore_result

例如:

@app.task(ignore_result=True)
def taskWithNoResult():
    # ...code without return..

全局config

app.conf.task_ignore_result = True

本地关闭的返回任务结果:

@app.task(ignore_result=True)
def add(...):

如果您只想返回并持续存在任务执行失败的异常结果,以进行后续调查和分析,则可以在使用数据库后的后端应用以下配置:

仅存储结果后端中的任务错误。

app.conf.task_ignore_result = True
app.conf.task_store_errors_even_if_ignored = True

相关内容

  • 没有找到相关文章

最新更新