1
我正在使用celery on_failure
處理程序記錄所有失敗的任務以進行調試和分析。我想知道失敗任務的任務名稱(函數名稱),我怎麼能得到它?芹菜:通過任務ID獲取函數名稱?
from celery import Task
class DebugTask(Task):
abstract = True
def after_return(self, *args, **kwargs):
print('Task returned: {0!r}'.format(self.request))
def on_failure(self, exc, task_id, args, kwargs, einfo):
func_name = get_func_name_by_task_id(task_id) # how do I do this?
print "{} failed".format(func_name) # expected out: add failed.
@app.task(base=DebugTask)
def add(x, y):
return x + y
PS:我知道有task_id
,但task_id
查詢函數名,每次不好玩,
謝謝,看起來像我過分想到這一點。 – cizixs