Como faço para excluir todas as mensagens de uma única fila usando o cli? Eu tenho o nome da fila e quero limpá-lo.
142
rabbitmqadmin é a ferramenta perfeita para isso
rabbitmqadmin purge queue name=name_of_the_queue_to_be_purged
http://rabbitserver:15672/cli/
você pode executar diretamente este comando
fonte
rabbitmqctl purge_queue queue_name -p my_virt_host
Para limpar a fila, você pode usar o seguinte comando (mais informações no documento da API):
fonte
O RabbitMQ implementa o AMQP (Advanced Message Queuing Protocol) para que você possa usar ferramentas genéricas para coisas como esta.
No Debian / Ubuntu ou sistema similar, faça:
fonte
RabbitMQ tem 2 coisas na fila
Excluir - excluirá a fila
Limpar - Isso esvaziará a fila (ou seja, remove as mensagens da fila, mas a fila ainda existe)
fonte
NOTA IMPORTANTE: Isso excluirá todos os usuários e configurações.
ALERTA !!
ALERTA !!
Eu não sugiro essa resposta até que você queira excluir dados de todas as filas, incluindo usuários e configurações. Apenas redefini-lo !!!
fonte
Eu acho que é tarde, mas para outras referências, isso pode ser feito com pika
fonte
Eu usei com sucesso
ampq-purge
do amqp-utils para fazer isso:fonte
Para excluir apenas as mensagens da fila, use:
Para excluir uma fila vazia ( --if-vazia ) ou sem consumidores ( --if-não utilizada ), use:
ou
fonte