Как проверить, запущена ли задача в celery (в частности, я использую celery-django)?
Я читал документацию и гуглил, но не могу найти вызов вроде:
my_example_task.state() == RUNNING
Мой случай использования заключается в том, что у меня есть внешний (java) сервис для транскодирования. Когда я отправляю документ на транскодирование, я хочу проверить, запущена ли задача, которая запускает эту службу, и если нет, то (повторно) запустить ее.
Я использую текущие стабильные версии - 2.4, я полагаю.
vi my_celery_apps/app1.py
app = Celery(worker_name)
vi tasks/task1.py
from my_celery_apps.app1 import app
app.AsyncResult(taskid)
try:
if task.state.lower() != "success":
return
except:
""" do something """