如何检查是RabbitMQ从芹菜中获取任务



对于运行时间比平时长的任务,我使用django-celeron。在任务运行之前,客户端一直检查当前任务的结果。问题是,如果celeryd没有运行,或者由于某些错误而终止,则检查任务是否仍显示PENDING结果。如果Worker有问题,我想将该信息提供给客户端,它应该停止检查任务的状态,任务应该终止。我用来检查任务状态的代码是:

res = AsyncResult(task_id)
result = res.status

您应该研究芹菜监控,特别是Flower:实时芹菜网络监控器。

我认为您正在寻找以下函数之一:

djcelery.celery.control.inspect().ping()djcelery.celery.control.inspect().active_queues()

查看我的示例django-celeron示例项目:https://github.com/brentpayne/django-celery-example/blob/master/polls/management/commands/worker_count.py

以及这份芹菜文档:http://docs.celeryproject.org/en/latest/userguide/workers.html#inspecting-工人

相关内容

  • 没有找到相关文章