Python 无法更新芹菜中的任务状态
我将芹菜4.1.0与redis和python 3一起用于执行任务 我运行的任务链如下所示:Python 无法更新芹菜中的任务状态,python,celery,Python,Celery,我将芹菜4.1.0与redis和python 3一起用于执行任务 我运行的任务链如下所示: def identifier(): res = chain( authenticate.s(token), get_identifier.s(id_type, amount) ).apply_async() return jsonify({'task_id': res.id}), 202, {'Location': url_for('task_status', t
def identifier():
res = chain(
authenticate.s(token),
get_identifier.s(id_type, amount)
).apply_async()
return jsonify({'task_id': res.id}), 202, {'Location': url_for('task_status', task_id=res.id)}
def task_status(task_id):
task = get_identifier.AsyncResult(task_id)
print(task.state)
在我的get_identifier
函数中,如果未满足某些条件,我有以下else语句:
@celery.task(bind=True)
def get_identifier(self, authentication, id_type, amount):
if:
# some stuff
else:
self.update_state(state=states.FAILURE, meta="result is None")
return {'StatusCode': '403',
'error_message': authentication['error_message'],
'id_type': id_type,
'identifier': items_list
}
在另一个函数中,我检查任务状态,如下所示:
def identifier():
res = chain(
authenticate.s(token),
get_identifier.s(id_type, amount)
).apply_async()
return jsonify({'task_id': res.id}), 202, {'Location': url_for('task_status', task_id=res.id)}
def task_status(task_id):
task = get_identifier.AsyncResult(task_id)
print(task.state)
任务状态始终为SUCCESS
,尽管我预计在代码进入else
语句的情况下任务状态为FAILURE
也许有人知道我做错了什么