Wie lösche ich alle Nachrichten mit der CLI aus einer einzelnen Warteschlange? Ich habe den Namen der Warteschlange und möchte ihn bereinigen.
142
rabbitmqadmin ist das perfekte Werkzeug dafür
rabbitmqadmin purge queue name=name_of_the_queue_to_be_purged
http://rabbitserver:15672/cli/
Sie können diesen Befehl direkt ausführen
quelle
rabbitmqctl purge_queue queue_name -p my_virt_host
Zum Löschen der Warteschlange können Sie den folgenden Befehl verwenden (weitere Informationen im API-Dokument):
quelle
RabbitMQ implementiert das Advanced Message Queuing Protocol (AMQP), sodass Sie für solche Dinge generische Tools verwenden können.
Führen Sie auf Debian / Ubuntu oder einem ähnlichen System Folgendes aus:
quelle
RabbitMQ hat 2 Dinge in der Warteschlange
Löschen - löscht die Warteschlange
Bereinigen - Hiermit wird die Warteschlange geleert (dh Nachrichten werden aus der Warteschlange entfernt, aber die Warteschlange ist noch vorhanden).
quelle
WICHTIGER HINWEIS: Dadurch werden alle Benutzer und Konfigurationen gelöscht.
ALERT !!
ALERT !!
Ich schlage diese Antwort erst vor, wenn Sie Daten aus allen Warteschlangen löschen möchten, einschließlich Benutzer und Konfigurationen. Einfach zurücksetzen !!!
quelle
Ich denke, es ist spät, aber für andere Referenz kann dies mit Pika gemacht werden
quelle
Ich habe erfolgreich
ampq-purge
von amqp-utils verwendet , um dies zu tun:quelle
Um nur Nachrichten aus der Warteschlange zu löschen, verwenden Sie:
Um eine Warteschlange zu löschen, die leer ist ( --if-leer ) oder keine Verbraucher hat ( --if-unbenutzt ), verwenden Sie:
oder
quelle