rabbitmqキューでクリーンアップ(メッセージを削除)するにはどうすればよいですか?
Ubuntu 14.04とrabbitmq-server 3.2.4-1を使用しています
# rabbitmqctl list_queues -p openstack
Listing queues ...
...
notifications.info 372
...
例えば:
Sudo apt-get install amqp-tools
amqp-delete-queue -q name_from_queue
このリンクにはさらにオプションがあります: https://stackoverflow.com/questions/5313027/rabbitmq-how-do-i-delete-all-messages-from-a-single-queue
キューを削除せずにキューをクリーンアップする方法はありますか?
はい;これはキューのpurgingと呼ばれ、多くの方法があります。
これは、ブローカーを指すrabbitmqadmin
などのツールを使用して実行できる操作に加えて、プロトコルから直接アクセスできる操作であるためです。したがって、人々は、C++やPythonなどのさまざまな言語で、キュー名を取得し、それらに対してqueue.purge
メソッドを実行するツールを作成し、作成できます。
buntu amqp-utilsパッケージ はそのようなツールに少し光を当てていますが、 Doug Barthのamqp-utils toolset で書かれたようなものを見つけるために遠くを見る必要はありませんRubyおよびamqp-purge
ユーティリティが含まれています。
rabbitmqadmin
構文は次のとおりです。
rabbitmqadminパージキュー キュー名
queue.purge
。 AMQP 0-9-1クイックリファレンス。 Pivotal Software。 2015年。rabbitmqadmin
。 Pivotal Software。 2015年。これがRabbitの一般的な操作アクションである場合、アクションをjujuチャームに追加して、システムにログオンしなくてもリモートで簡単に呼び出せるようにする必要があります。また、Jujuは、これがシステム上で他に何も起きていないときに確実に行われるように注意します(明らかに、運用/展開の観点から)。