După ce m-am orientat în interfața de management (mulțumesc @jrhodin), am putut să-mi dau seama cum să fac asta prin rabbitmqctl. Cheia este să îi transmiteți argumentele pid și nume lista canalelor
.
Mai întâi, faceți list_consumers și obțineți pid-ul consumatorului:
$ sudo rabbitmqctl list_consumers | grep <nume-coadă>
Copiați codul pid (de ex., <[email protected]>)
Apoi faceți list_channels și căutați codul:
$ sudo rabbitmqctl list_channels pid nume conexiune | grep „<pid-aici>”
Ieșirea va afișa gazda la distanță și gazda locală ca parte a numelui canalului. Dacă doriți în plus să căutați conexiunea, puteți lua pid-ul conexiunii (din comanda de mai sus) și puteți găsi grep prin list_connections pentru aceasta.
Iată o buclă care va scuipa numele consumatorilor și canalelor pentru o anumită coadă:
pentru i în $(sudo rabbitmqctl list_consumers | grep <queue-name> | cut -f 2);
do echo -n "Consumator: " $i;
echo -n " Canal: ";
sudo rabbitmqctl list_channels pid name | grep $i | cut -f 2;
Terminat
Exemplu de ieșire:
Consumator: <[email protected]> Canal: xx.x.xx.159:8247 -> xxx.xx.xx.119:5671 (1)
Consumator: <[email protected]> Canal: xx.x.xx.159:9002 -> xxx.xx.xx.119:5671 (1)
Consumator: <[email protected]> Canal: xx.x.xx.159:7298 -> xxx.xx.xx.119:5671 (1)
Consumator: <[email protected]> Canal: xx.x.xx.159:12113 -> xxx.xx.xx.119:5671 (1)
Consumator: <[email protected]> Canal: xx.x.xx.159:14212 -> xxx.xx.xx.119:5671 (1)