Limpar fila rabbitmq

3

como posso limpar (excluir mensagens) em uma fila rabbitmq?
Estou usando o Ubuntu 14.04 e o rabbitmq-server 3.2.4-1

Exemplo:

# rabbitmqctl list_queues -p openstack
Listing queues ...
...
notifications.info      372
...
    
por user300177 03.12.2015 / 08:08

3 respostas

1

Por exemplo:

sudo apt-get install amqp-tools
amqp-delete-queue -q name_from_queue

Neste link você tem mais opções: link

    
por Julen Larrucea 03.12.2015 / 10:14
1
  

existe uma maneira de limpar a fila sem excluir a fila?

Sim; isso é chamado de purgando a fila e há muitas maneiras de fazer isso.

Isso porque, além de ser algo que se pode fazer com ferramentas como rabbitmqadmin apontado no broker, é uma operação acessível diretamente pelo protocolo. Assim, as pessoas podem escrever e ter escrito, ferramentas que pegam nomes de filas e encenam o método queue.purge contra elas, em linguagens variadas como C ++ e Python.

O pacote Ubuntu amqp-utils é um pouco de luz sobre essas ferramentas, mas não é necessário procure muito para encontrar coisas como o conjunto de ferramentas amqp-utils de Doug Barth escrito em Ruby e contendo um utilitário amqp-purge .

A sintaxe rabbitmqadmin é:

rabbitmqadmin purge queue queue-name

Leitura adicional

por JdeBP 08.12.2015 / 22:55
0

Se esta é uma ação operacional comum para o Rabbit, devemos adicionar uma ação ao charme do juju para que seja facilmente invocada remotamente sem precisar fazer logon no sistema. Juju também tomaria cuidado para garantir que isso fosse feito no momento em que nada mais estivesse acontecendo no sistema (do ponto de vista de operações / implantação, obviamente).

    
por Mark Shuttleworth 06.12.2015 / 19:27