rabbitmq 列出所有虚拟主机上的队列
rabbitmq list queues on all vhosts
我有 rabbitmq 和几个虚拟主机,每个主机上的队列很少。
如何使用 rabbitmqctl 列出所有虚拟主机的所有队列?
我试过:
rabbitmqctl list_queues -p /*
rabbitmqctl list_queues -p *
rabbitmqctl list_queues -p /
rabbitmqctl list_queues -p ./*
有什么想法吗?
试试这个:
#!/bin/bash
IFS=$'\n'
ordered_vhosts=$(./rabbitmqctl list_vhosts -q | xargs -n1 | sort -u)
for V in $ordered_vhosts; do
echo "*****Vhost $V Total queues " $(./rabbitmqctl list_queues -q -p $V | wc -l)
for Q in $(./rabbitmqctl list_queues -q name messages -p $V | xargs -n2 | sort -u); do
echo "Vhost $V queue-name total-messages $Q"
done
done
您可以使用 for i in $(rabbitmqctl list_vhosts); do echo vhost: $i && rabbitmqctl list_queues -p $i; done
从命令行 运行
对我有用
rabbitmqctl list_vhosts | xargs -n1 rabbitmqctl list_queues -p
我有 rabbitmq 和几个虚拟主机,每个主机上的队列很少。 如何使用 rabbitmqctl 列出所有虚拟主机的所有队列? 我试过:
rabbitmqctl list_queues -p /*
rabbitmqctl list_queues -p *
rabbitmqctl list_queues -p /
rabbitmqctl list_queues -p ./*
有什么想法吗?
试试这个:
#!/bin/bash
IFS=$'\n'
ordered_vhosts=$(./rabbitmqctl list_vhosts -q | xargs -n1 | sort -u)
for V in $ordered_vhosts; do
echo "*****Vhost $V Total queues " $(./rabbitmqctl list_queues -q -p $V | wc -l)
for Q in $(./rabbitmqctl list_queues -q name messages -p $V | xargs -n2 | sort -u); do
echo "Vhost $V queue-name total-messages $Q"
done
done
您可以使用 for i in $(rabbitmqctl list_vhosts); do echo vhost: $i && rabbitmqctl list_queues -p $i; done
从命令行 运行
对我有用
rabbitmqctl list_vhosts | xargs -n1 rabbitmqctl list_queues -p