Author |
Message
|
Ashg |
Posted: Tue Oct 20, 2009 9:34 am Post subject: MQ messages receiver info |
|
|
Newbie
Joined: 22 Sep 2009 Posts: 8
|
Hello,
I am new to MQ.I want to know if there is any way I can find out if the messages that were sent from remote Qmanager has been received.Q depth shows zero and there is no mssg in dead letter Q.Any help will be appreciated.We have MQ6.0.2.The application team says that the messages which were sent have not been recieved yet.
Is there any way I can find out that please let me know
Thanks
Ash |
|
Back to top |
|
 |
Sam Uppu |
Posted: Tue Oct 20, 2009 9:47 am Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
MQ is not a DB. It doesn't store the msg info. If you dont see anything in any of the queues then there are no msgs in MQ.
It should be an understanding between source and destination apps. They have to check their logs and see what happened to the msg.
You can check the QSTATUS(<queue in question>) to find out whether anybody is listening on this queue which consumes the msgs. Check the IPPROCS.
You can find out the PID by DIS QSTATUS((<queue in question>) TYPE(HANDLE) ALL.
Hope this helps.
Thanks. |
|
Back to top |
|
 |
Ashg |
Posted: Tue Oct 20, 2009 10:34 am Post subject: |
|
|
Newbie
Joined: 22 Sep 2009 Posts: 8
|
Sam Uppu wrote: |
MQ is not a DB. It doesn't store the msg info. If you dont see anything in any of the queues then there are no msgs in MQ.
It should be an understanding between source and destination apps. They have to check their logs and see what happened to the msg.
You can check the QSTATUS(<queue in question>) to find out whether anybody is listening on this queue which consumes the msgs. Check the IPPROCS.
You can find out the PID by DIS QSTATUS((<queue in question>) TYPE(HANDLE) ALL.
Hope this helps.
Thanks Sam, |
When I do dis qstatus with TYPE(HANDLE) ALL,it gives q status not found.If i do without TYPE(HANDLE) it gives
TYPE(QUEUE)
CURDEPTH(46) IPPROCS(0)
LGETDATE( ) LGETTIME( )
LPUTDATE( ) LPUTTIME( )
MEDIALOG(S0000117.LOG) MONQ(OFF)
MSGAGE( ) OPPROCS(0)
QTIME( , ) UNCOM(NO)
There are som old messages which are there.Do you think this should be the reason.
Thanks
Ash
Thanks. |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Oct 20, 2009 10:36 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Unless the whole WMQ Infrastructure has been both designed and configured properly
AND (most importantly)
The people developing the applications that are sending data understand what they are doing
THEN
You can lose messages without you knowing it
For example(1)
An app sends a non persistent message from Queue A on QMGR AA to Queue Z which is on a remote QMGR ZZ. Before the Receiving App can receive the message QMGR ZZ is restarted.
Example(2)
An app sends what it thinks is a persistent message (using AS_DEFAULT in the Put message options) but the queue (A on QMGR AA) it uses is Non Persistent to queue Z on QMGR ZZ. Again before the receiving App can receive it, the Qmgr is restarted.
Fill in your answer below
Will the message sent be there Yes or No.
WMQ can guarantee the delivery of messages ONLY if the underlying queues and WMQ Objects are configured correctly AND the sending applications send messages in a way that will also ensure its proper delivery.
You need to ask more questions about how everything is configured AND how the sending apps setup the messages to be sent. Only then can you get a clearer idea as to what happened with your messages.
[/b] _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Sam Uppu |
Posted: Tue Oct 20, 2009 10:41 am Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
Quote: |
TYPE(QUEUE)
CURDEPTH(46) IPPROCS(0)
LGETDATE( ) LGETTIME( )
LPUTDATE( ) LPUTTIME( )
MEDIALOG(S0000117.LOG) MONQ(OFF)
MSGAGE( ) OPPROCS(0)
QTIME( , ) UNCOM(NO)
There are som old messages which are there.Do you think this should be the reason. |
As there is nothing listening on this queue to pull the msgs off of the queue and you see the msgs on this queue. Did you browse those msgs and see?. I think you should find msg whatever you are looking for as the msgs are stacking up on the queue.
Thanks. |
|
Back to top |
|
 |
Sam Uppu |
Posted: Tue Oct 20, 2009 10:51 am Post subject: |
|
|
 Yatiri
Joined: 11 Nov 2008 Posts: 610
|
You should check with the destination application why they are not processing the msgs.
Thanks. |
|
Back to top |
|
 |
Ashg |
Posted: Tue Oct 20, 2009 1:35 pm Post subject: |
|
|
Newbie
Joined: 22 Sep 2009 Posts: 8
|
Sam Uppu wrote: |
You should check with the destination application why they are not processing the msgs.
Thanks Again Sam. |
This system has been developed around 5 Yrs back and everything was working fine until now.All the messages are persistent.Due to some reason the mesages which they send on one of the queue are not recieved by us.I dont see any errors in logfiles and everything looks fine.
Thanks. |
|
Back to top |
|
 |
SAFraser |
Posted: Tue Oct 20, 2009 1:42 pm Post subject: |
|
|
 Shaman
Joined: 22 Oct 2003 Posts: 742 Location: Austin, Texas, USA
|
Sometimes seeing the Last Put Time/Date and Last Get Time/Date is useful in confirming some type of activity in a queue.
To see these, alter the queue definition with MONQ(LOW) and STATQ(ON). If there are old messages in the queue, there still might be more recent activity (if the consuming application is consuming messages based upon some criteria such as correlID).
I hope this is clear?.... I often use these stats to help me "prove" to an app team that data has flowed through MQ; and, thus, the application is the problem. I'm afraid it is a common thing for the MQ admin to need to do! |
|
Back to top |
|
 |
John89011 |
Posted: Tue Oct 20, 2009 2:27 pm Post subject: Re: MQ messages receiver info |
|
|
Voyager
Joined: 15 Apr 2009 Posts: 94
|
Ashg wrote: |
Hello,
I am new to MQ.I want to know if there is any way I can find out if the messages that were sent from remote Qmanager has been received.Q depth shows zero and there is no mssg in dead letter Q.Any help will be appreciated.We have MQ6.0.2.The application team says that the messages which were sent have not been recieved yet.
Is there any way I can find out that please let me know
Thanks
Ash |
Check your qmgr logs to see if any any errors were thrown when messages were sent... where are the app folks looking for the messages? On the MQ or app level? If they have a process that reads the messages from the queue, is it mapped properly? I would also ask them to code a process where when they receive a message, process it, and put an acknowledgement message back to you like "we got the message and processed it successfully"
If everything is configured properly, make sure the app folks are looking for the messages in the right place. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Oct 20, 2009 2:50 pm Post subject: Re: MQ messages receiver info |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
John89011 wrote: |
I would also ask them to code a process where when they receive a message, process it, and put an acknowledgement message back to you like "we got the message and processed it successfully" |
This method is filled with peril - if you don't get the acknowledgement message, does that mean the original message didn't arrive, arrived but wasn't processed or that the acknowledgement message is stuck someplace?
There have been numerous discussions in here concerning this, with specific reference to the COD/COA messages. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Oct 20, 2009 2:51 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Ashg wrote: |
This system has been developed around 5 Yrs back and everything was working fine until now. |
Then you're looking for a recent change, probably in the application area. I notice you said in your original post "there are no messages" yet there are 46 sitting unread in the queue status you posted. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
John89011 |
Posted: Tue Oct 20, 2009 4:04 pm Post subject: Re: MQ messages receiver info |
|
|
Voyager
Joined: 15 Apr 2009 Posts: 94
|
Vitor wrote: |
John89011 wrote: |
I would also ask them to code a process where when they receive a message, process it, and put an acknowledgement message back to you like "we got the message and processed it successfully" |
This method is filled with peril - if you don't get the acknowledgement message, does that mean the original message didn't arrive, arrived but wasn't processed or that the acknowledgement message is stuck someplace?
There have been numerous discussions in here concerning this, with specific reference to the COD/COA messages. |
I was suggesting this because often apps are complaining that they never got the message but I'd get the response. So then I'd ask them if the process that's picking up the message is running. Often that would be the case where they are looking for messages in their local queue but don't realize that nothing might be there since the process already picked up the messages and processed them in which case they'd need to examine the process logs. |
|
Back to top |
|
 |
exerk |
Posted: Tue Oct 20, 2009 10:34 pm Post subject: Re: MQ messages receiver info |
|
|
 Jedi Council
Joined: 02 Nov 2006 Posts: 6339
|
John89011 wrote: |
Vitor wrote: |
John89011 wrote: |
I would also ask them to code a process where when they receive a message, process it, and put an acknowledgement message back to you like "we got the message and processed it successfully" |
This method is filled with peril - if you don't get the acknowledgement message, does that mean the original message didn't arrive, arrived but wasn't processed or that the acknowledgement message is stuck someplace?
There have been numerous discussions in here concerning this, with specific reference to the COD/COA messages. |
I was suggesting this because often apps are complaining that they never got the message but I'd get the response. So then I'd ask them if the process that's picking up the message is running. Often that would be the case where they are looking for messages in their local queue but don't realize that nothing might be there since the process already picked up the messages and processed them in which case they'd need to examine the process logs. |
At the development level at least, the use of COD's where the COD's can be forced to the dead-letter queue (i.e. deliberate omission of a return path to the sending queue manager, or ensuring the application ID is not authorised to the required objects) can be useful as 'proof' that the message was processed, but in general I'm in agreement with Vitor - false positives can be the result of COA/COD messages. _________________ It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys. |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Oct 21, 2009 5:43 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Looks like a triggering issue, yes?
Is the queue with 46 messages triggered? Please display all of the attributes of this queue. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
sirfvikas |
Posted: Thu Oct 22, 2009 8:23 am Post subject: |
|
|
Newbie
Joined: 22 Oct 2009 Posts: 9
|
|
Back to top |
|
 |
|