I think that would be a really useful addition for Rabbit.<br><br>A topic exchange named something like amq.admin or <a href="http://amq.broker.info">amq.broker.info</a> that has internal consumers listening to several queues whose bindings correspond to a standardized set of messages and routes info messages to a response exchange appropriately.<br>
<br>Just some off the cuff ideas:<br><br>amq.admin.listVirtualHosts.[pattern]<br>amq.admin.listUsers.[pattern]<br>amq.admin.listPrivileges.(user)<br>amq.admin.listExchanges.vHostName.[pattern]<br>amq.admin.listQueues.exchangeName.queueName.[pattern]<br>
amq.admin.listQueues.exchangeName.binding.[pattern]<br>amq.admin.getMessageCount.queueName<br><br>where pattern might be a simple matching expression.<br>ex: if you sent a message with the routing key amq.admin.listVirtualHosts.Rabbit* you would get back a message with a list of all virtual hosts whos ename starts with &quot;Rabbit&quot;.<br>
<br><br>So it might be like this, at a high level....<br><br>RabbitMQ server:<br>amq.admin - Topic exchange<br>�� has a set of queues bound with routing keys corresponding to each command<br>�� each queue has an internal consumer process listening. These processes will use rabbit_control to get the requested info and construct a response message.<br>
�� client messages should have a &quot;secret&quot; routing key in the payload (see below) so the consumers know where to route their response.<br><br>amq.admin.response - Direct exchange<br>�� clients bind exclusive queues with a &quot;secret&quot; routing key that they send in the payload of their messages to amq.admin<br>
�� the internal consumer processes route their response messages to this exchange with the &quot;secret&quot; key the client sent in their message.<br><br><br><br><br><br><div class="gmail_quote">On Wed, Apr 22, 2009 at 1:32 PM, Matthias Radestock <span dir="ltr">&lt;<a href="mailto:matthias@lshift.net">matthias@lshift.net</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Kyle,<div class="im"><br>
<br>
Kyle R. Burton wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Are there any reserved exchange or routing namespaces for the<br>
implementation itself?<br>
</blockquote>
<br></div>
No, though a pretty safe bet is to use the &quot;amq.&quot; namespace, which is reserved for &quot;predeclared and standardised exchanges&quot;. So, for example, rabbit&#39;s internal log exchange is named &quot;amq.rabbitmq.log&quot;.<br>

<br>
<br>
Regards,<br><font color="#888888">
<br>
Matthias.<br>
</font></blockquote></div><br>