rabbitmqctl
правильно сообщает тысячи поставленных в очередь задач:Почему сельдерей.control.inspect сообщает меньше задач в очереди, чем rabbitmqctl?
$ sudo rabbitmqctl -q list_queues name messages messages_ready messages_unacknowledged
default 13142 13126 16
Еще сельдерей отчеты:
>>> len(app.control.inspect().active()['[email protected]'])
4
>>> len(app.control.inspect().scheduled()['[email protected]'])
1
>>> len(app.control.inspect().reserved()['[email protected]'])
16
>>> len(app.control.inspect().revoked()['[email protected]'])
0
Правильное количество (тысячи) задач, кажется, чтобы показать в app.control.inspect().stats()['[email protected]']['total']
, но я действительно хочу знать правильное количество выдающихся поставленных в очередь задач изнутри python и active()
и др., похоже, только когда-либо сообщают до 16 или около того - возможно, существует предел?
Коротких использования льготных звонков подпроцесса rabbitmqctl
, как я могу получить полные очереди количества задач внутри питона, предпочтительно через celery
(кстати, этот сервер использует сельдерей 3.1.8 в настоящее время)
Спасибо! Могу ли я также получить информацию о том, что каждое сообщение в очереди использует 'pika' и т. Д., Или просто общее количество сообщений в очереди? – DrMeers
Спасибо @ChillarAnand; «употребляет» сообщения через «pika» безопасно оставьте их в очереди на сельдерей для обработки? Если это так, это хорошее решение. – DrMeers
@DrMeers Я не думаю, что для этого есть способ. Однако вы можете потреблять и запрашивать сообщения http://rabbitmq.1065348.n5.nabble.com/How-to-get-the-list-of-messages-from-Queue-without-consuming-the-messages-td28135.html – ChillarAnand