<div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif">Ok, I updated the coed as below.  </div><div class="gmail_default"><div class="gmail_default"><br></div><div class="gmail_default"><div class="gmail_default">

<font color="#999999" face="courier new, monospace">   ch1.on_ack do |basic_ack|</font></div>
<div class="gmail_default"><font color="#999999" face="courier new, monospace">        puts "Received basic_ack: multiple = #{basic_ack.multiple}, delivery_tag = #{basic_ack.delivery_tag}"</font></div><div class="gmail_default">


<font color="#999999" face="courier new, monospace">   end</font></div><div class="gmail_default"><font color="#999999" face="courier new, monospace"><br></font></div><div class="gmail_default"><font color="#999999" face="courier new, monospace">      10.times do<br>


</font></div><div class="gmail_default"><font color="#999999" face="courier new, monospace">        @ns_x.publish(message_body,  :routing_key => "ipamAgent.operations", :headers => message_headers, :mandatory => true)</font></div>


<div class="gmail_default"><font color="#999999" face="courier new, monospace">      end</font></div><div style="font-family:tahoma,sans-serif"><br></div><div style="font-family:tahoma,sans-serif">Can you let me know  your comments for the below questions<br>


</div><div style="font-family:tahoma,sans-serif"><br></div><div><div class="gmail_default"><div class="gmail_default" style="font-size:13px;font-family:arial,sans-serif">1. <span style="font-family:tahoma,sans-serif"> How can I identify the message along with the message contents for which didn't get the acknowledgement </span><span style="font-family:tahoma,sans-serif">?</span></div>


<div class="gmail_default" style="font-size:13px;font-family:arial,sans-serif"><span style="font-family:tahoma,sans-serif"><br></span></div><div class="gmail_default"><font face="tahoma, sans-serif">2. While publishing the 10 messages, I received <font color="#000000" style="font-size:13px"><font>acknowledgement for 5 messages only. I suspect RabbitMq sent </font>acknowledgement for multiple messages on 5 & 10, if so then how can we make sure that the acknowledgement is meant for message 1,2,3,4 and 5 in "</font></font><span style="font-size:13px;color:rgb(102,102,102);font-family:'courier new',monospace">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:</span><span style="font-size:13px;color:rgb(102,102,102);font-family:'courier new',monospace">0x96d6560 @delivery_tag=5, @multiple=true>, delivery_tag = 5</span><font color="#000000" face="tahoma, sans-serif" style="font-size:13px">"</font></div>


<div class="gmail_default" style="font-size:13px"><font face="tahoma, sans-serif"><font color="#000000"><br></font></font></div><div class="gmail_default" style="font-size:13px"><font face="tahoma, sans-serif"><font color="#000000"><b>Acknowledgement O/p for 10 messages:</b></font></font></div>

<div class="gmail_default" style="font-size:13px"><font face="tahoma, sans-serif"><font color="#000000"><b><br></b></font></font></div><div class="gmail_default" style="font-size:13px"><div class="gmail_default" style="font-family:arial,sans-serif">

<font face="courier new, monospace" color="#666666">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:0x96d6560 @delivery_tag=5, @multiple=true>, delivery_tag = 5</font></div>
<div class="gmail_default" style="font-family:arial,sans-serif"><font face="courier new, monospace" color="#666666">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:0x96d5f84 @delivery_tag=6, @multiple=false>, delivery_tag = 6</font></div>


<div class="gmail_default" style="font-family:arial,sans-serif"><font face="courier new, monospace" color="#666666">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:0x96d5700 @delivery_tag=7, @multiple=false>, delivery_tag = 7</font></div>


<div class="gmail_default" style="font-family:arial,sans-serif"><font face="courier new, monospace" color="#666666">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:0x96d50c0 @delivery_tag=8, @multiple=false>, delivery_tag = 8</font></div>


<div class="gmail_default" style="font-family:arial,sans-serif"><font face="courier new, monospace" color="#666666">Received basic_ack: multiple = #<AMQ::Protocol::Basic::Ack:0x972ce10 @delivery_tag=10, @multiple=true>, delivery_tag = 10</font></div>


</div><div class="gmail_default" style="font-size:13px"><font face="tahoma, sans-serif"><font color="#000000"><br></font></font></div><div class="gmail_default" style="font-size:13px"><font face="tahoma, sans-serif"><font color="#000000">3. How do we ensure that message is successfully published to the exchange.(I want some way to identify the message is sent from ruby client to RabbitMq exchange successfully)</font></font></div>


</div></div></div></div><div class="gmail_extra"><br clear="all"><div><font style="font-family:tahoma,sans-serif" face="tahoma, sans-serif">regards,<br>Loganathan<br>Mob: <a href="tel:%2B91%207760780741" value="+917760780741" target="_blank">+91 7760780741</a> | <a href="tel:%2B91%209944414388" value="+919944414388" target="_blank">+91 9944414388</a><br>

Skype: loganathan.sellappa<br>
</font><span style="font-family:tahoma,sans-serif"><a href="http://vizualize.me/loganathan" target="_blank">ViewMe</a></span><br><br></div>
<br><br><div class="gmail_quote">On Mon, Apr 28, 2014 at 6:22 PM, Michael Klishin <span dir="ltr"><<a href="mailto:mklishin@gopivotal.com" target="_blank">mklishin@gopivotal.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<div>On 28 April 2014 at 16:47:24, Loganathan Sellapa (<a href="mailto:loganathan.ms@gmail.com" target="_blank">loganathan.ms@gmail.com</a>) wrote:<br>
> > @ns_x.publish(message_body, :routing_key => "ipamAgent.operations",<br>
> :headers => message_headers, :mandatory => true)<br>
> end<br>
><br>
> ch1.on_ack do |basic_ack|<br>
> puts "Received basic_ack: multiple = #{basic_ack.multiple},<br>
> delivery_tag = #{basic_ack.delivery_tag}"<br>
> end<br>
<br>
</div>You need to define the handler before you publish, otherwise you have<br>
a race condition  (it makes sense<br>
to do this right after calling confirm_select).<br>
<div><div>--<br>
MK<br>
<br>
Software Engineer, Pivotal/RabbitMQ<br>
</div></div></blockquote></div><br></div></div>