Jak usunąć wszystkie wiadomości z jednej kolejki za pomocą CLI? Mam nazwę kolejki i chcę ją wyczyścić.
142
Rabbitmqadmin jest do tego idealnym narzędziem
rabbitmqadmin purge queue name=name_of_the_queue_to_be_purged
http://rabbitserver:15672/cli/
możesz bezpośrednio uruchomić to polecenie
źródło
rabbitmqctl purge_queue queue_name -p my_virt_host
Aby wyczyścić kolejkę, możesz użyć następującego polecenia (więcej informacji w dokumentacji API):
źródło
RabbitMQ implementuje protokół Advanced Message Queuing Protocol (AMQP), dzięki czemu można używać ogólnych narzędzi do takich rzeczy.
W systemie Debian / Ubuntu lub podobnym wykonaj:
źródło
RabbitMQ ma 2 rzeczy w kolejce
Usuń - usuwa kolejkę
Wyczyść - spowoduje to opróżnienie kolejki (co oznacza usunięcie wiadomości z kolejki, ale kolejka nadal istnieje)
źródło
WAŻNA UWAGA: spowoduje to usunięcie wszystkich użytkowników i config.
ALARM !!
ALARM !!
Nie sugeruję tej odpowiedzi, chyba że chcesz usunąć dane ze wszystkich kolejek, w tym użytkowników i konfiguracji. Po prostu zresetuj !!!
źródło
Myślę, że jest późno, ale dla innych odniesień można to zrobić za pomocą pika
źródło
Z powodzeniem użyłem
ampq-purge
z amqp-utils, aby to zrobić:źródło
Aby usunąć tylko wiadomości z kolejki, użyj:
Aby usunąć kolejkę, która jest pusta ( --if-empty ) lub nie ma konsumentów ( --if-unused ), użyj:
lub
źródło