Hi all, <div><br></div><div>I&#39;m currently using RabbitMQ to &quot;build&quot; a software platform allowing various components to plug and communicate to each-other on two modes : request/response (&quot;point to point&quot;) and pub/sub.</div>
<div><br></div><div>For the req/res scenario, I&#39;m using the mandatory flag on my messages, so that sending a request message to a disconnected component (no corresponding queue declared on the broker) returns an error to the sender. This works as expected.</div>
<div><br></div><div>But now, I would want to plug new components to spy on those flows of requests and responses, without interfering with the ongoing communications... which is not by default compatible with my use of the mandatory flag : when a &quot;spy&quot; component is monitorng request/response messages, those messages end-up in its queue, then even if the actual target component for those messages is not present on the broker (no queue), no error is returned to the sender.</div>
<div><br></div><div>What I&#39;m looking for is a way to have &quot;mandatory&quot; messages delivered to a queue bound to an exchange with a special kind of binding, so that the delivery to the queue doesn&#39;t count as one, from the exchange point of view, and so that a &quot;no delivery&quot; error may still be returned to the sender, if no queue with a matching standard binding to that exchange stores the message.</div>
<div><br></div><div>I&#39;ve started to dive into RabbitMQ&#39;s source code, but before spending too much energy into this I wanted to know if there was any simpler solution to my problem - some secret binding parameter, a plug-in... - and if that idea seemed reasonable to the RabbitMQ gurus :)</div>
<div><br></div><div>Thanks for your help!</div><div><br></div><div>Charly</div>