好吧,我想我有一个相对简单的问题,就像我用它打砖墙。我有一个应用程序和一个网页,允许您使用celery & redis(broker)在服务器端运行多个脚本。查询任务状态 - 芹菜和redis
所有我想要做的是,当我开始一个任务给它一个名称/ ID(任务将被描绘成在客户端上的按钮),即
@app.route('/start_upgrade/<task_name>')
def start_upgrade(task_name):
example_task.delay(1, 2, task_name=task_name)
那么任务已经启动后,关闭我想看看任务是否正在运行/等待/完成一个单独的请求,最好是像;
@app.route('/check_upgrade_status/<task_name>')
def get_task_status(task_name):
task = celery.get_task_by_name(task_name)
task_state = task.state
return task_state # pseudocode
但我在文档中找不到像这样的东西。尽管仅供参考,但我对芹菜很新,所以假设我一无所知。另外,为了更加明显,我需要能够从python查询任务状态,请不要使用CLI命令。
任何实现我查询队列目标的替代方法也是受欢迎的。