1

通常よりも長時間実行されるタスクには、django-celery を使用します。タスクがクライアントを実行するまで、常に現在のタスクの結果を確認します。問題は、celeryd が実行されないか、何らかのエラーが原因で終了した場合、タスクをチェックしても結果が PENDING になることです。ワーカーに問題がある場合は、その情報をクライアントに提供したいと思います。ワーカーは停止してタスクのステータスを確認し、タスクを終了する必要があります。タスクのステータスを確認するために使用するコードは次のとおりです。

res = AsyncResult(task_id)
result = res.status
4

2 に答える 2

0

次の関数のいずれかを探していると思います。

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

私のサンプル django-celery サンプル プロジェクトをチェックしてください: 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-workers

于 2013-08-28T04:43:54.053 に答える
0

celery Monitoring、特にFlower: Real-time Celery web-monitorを調べる必要があります。

于 2013-08-24T15:01:51.250 に答える