estoy usando Celery para gestionar tareas asíncronas. Ocasionalmente, sin embargo, el proceso de apio disminuye y no se ejecuta ninguna de las tareas. Me gustaría poder verificar el estado del apio y asegurarme de que todo funciona bien, y si detecto algún problema, mostraré un mensaje de error al usuario. De la documentación Trabajador Apio parece que podría ser capaz de utilizar ping o inspect para esto, pero de ping siente hacky y no está claro exactamente cómo inspeccionar está destinado a ser utilizado (si inspeccionar(). Registrado() está vacía?).detectar si apio está disponible/Ejecución
Cualquier orientación sobre este sería apreciada. Básicamente lo que estoy buscando es un método de este modo:
def celery_is_alive():
from celery.task.control import inspect
return bool(inspect().registered()) # is this right??
EDIT: No siquiera se parece a domicilio() está disponible en el apio 2.3.3 (a pesar de que los 2,1 lista de documentos que). Quizás ping es la respuesta correcta.
EDIT: Ping también no parece hacer lo que pensaba que iba a hacer, por lo que aún no está seguro de la respuesta aquí.
¿La respuesta a continuación no funciona para usted? Como alguien que tiene un problema similar para resolver, me gustaría algo de confirmación. – kojiro