214 votes

Comment faire pour supprimer toutes les files d’attente de Rabbitmq ?

J’ai installé et a pu répertorier tous les échanges et les files d’attente. Comment est-ce que je peux utiliser ou `` pour supprimer toutes les files d’attente.

307voto

lukiffer Points 4944

Tout d’abord, la liste vos files d’attente :

``

Puis dans la liste, vous devrez supprimer manuellement un par un :

``

À cause du format de sortie, ne s’affiche pas vous pouvez grep la réponse de `` . Alternativement, si vous cherchez juste un moyen de tout effacer (lire : réinitialiser tous les paramètres, l’installation de retour à un État par défaut), utilisez :

63voto

admenva Points 912

Avec `` vous pouvez les supprimer avec ce bon mot :

25voto

thoufek Points 91

Sachez que « rabbitmqctl » sera reset tout retour aux « préréglages ». N’importe quel RabbitMQ utilisateurs, hôtes virtuels, etc., que vous avez créé va être époustouflé.

6voto

Dan Points 163

J'ai fait un deleteRabbitMqQs.sh qui accepte des arguments à la recherche de la liste des files d'attente, la sélection uniquement celles correspondant au modèle que vous souhaitez. Si vous n'offrez aucun arguments, il va supprimer tous!!! Il vous montre la liste des files d'attente de son sujet à supprimer, vous permettant de quitter avant de faire quelque chose de destructif.

for word in "$@"
do
        args=true
        newQueues=$(rabbitmqctl list_queues name | grep "$word")
        queues="$queues
$newQueues"
done
if [ $# -eq 0 ]; then
        queues=$(rabbitmqctl list_queues name | grep -v "\.\.\.")
fi

queues=$(echo "$queues" | sed '/^[[:space:]]*$/d')

if [ "x$queues" == "x" ]; then
        echo "No queues to delete, giving up."
        exit 0
fi

read -p "Deleting the following queues:
${queues}
[CTRL+C quit | ENTER proceed]
"

while read -r line; do
        rabbitmqadmin delete queue name="$line"
done <<< "$queues"

Si vous souhaitez que les différents correspondant à contre-arguments que vous transmettez, vous pouvez modifier la commande grep en ligne quatre. Lors de la suppression de toutes les files d'attente, il ne sera pas supprimer celles avec trois espaces consécutifs, parce que j'ai pensé que l'éventualité serait plus rare que les personnes qui ont rabbitmqctl l'impression de sa sortie dans différentes langues.

Profitez-en!

-1voto

Salami Points 164
rabbitmqadmin list queues|awk 'NR>3{print $4}'|head -n-1|xargs -I qname rabbitmqadmin delete queue name=qname

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X