Basit bir Curl ile rabbitmq'deki bir kuyruğun boyutunu (kalan iletileri) almanın bir yolu var mı? curl -xget http://host:1234/api/queue/test/stats
Rabbitmq sıra boyutu almak için Curl
gibi
şey Management Plugin dan size
Basit bir Curl ile rabbitmq'deki bir kuyruğun boyutunu (kalan iletileri) almanın bir yolu var mı? curl -xget http://host:1234/api/queue/test/stats
Rabbitmq sıra boyutu almak için Curl
gibi
şey Management Plugin dan size
Sonunda aşağıdaki hile yaptı. Ben bu muhtemelen en temiz çözüm hacky sed bir gömlekler aşk kadar
kullanın HTTP API ederiz.
/api/queues/(vhost)/(name)
one'a ihtiyacınız var. Çıkış düz jsonda, yani messages
alanını (ve ilgili) kaçırmayacaksınız.
Not: Burada, istatistik verileriyle ilgili bazı ayrıntılar vardır - http://hg.rabbitmq.com/rabbitmq-management/raw-file/86f7d33a6284/priv/www/doc/stats.html, çünkü belgelerdeki bağlantı bozuk. HTTP API dayalı
curl -s -i -u guest:guest http://host:port/api/queues/vhost/queue_name | sed 's/,/\n/g' | grep '"messages"' | sed 's/"messages"://g'
curl -u login:password http://localhost:15672/api/queues | sed 's/,/\n/g' | grep '"messages"\:'
RabbitMQ v3.3.4 PHP kütüphanesi:
:
curl -s -u <user>:<password> http://<host>:<port>/api/queues/<virtual-host>/<queue> | jq .messages
şey 'sed benziyor | grep | sed 'muhtemelen refactored olmalıdır. Ben curl için giderdim ... | sed -n '/.* "iletileri:" * \ ([^] * \). */\ 1/p' değil YMMV. Çıktı uygun JSON ise, ... | jq -r .messages' daha basit ve okunabilir. (Test edebildiğim bir yerde değil.) – tripleee
Ayrıca "curl -i" seçeneği, başlıkları bir kenara atıyor olsanız da oldukça işe yaramıyor. Vhost parametresini yüzde kodlamak için requrement tarafından tetiklendim; curl -s -u konuk: misafir http: // localhost: 55672/api/kuyruk /% 2F/queuename | grep -o "mesajları": [0-9] * ''benim için çalışıyor. – tripleee