Author |
Message
|
Brody |
Posted: Tue May 03, 2005 7:43 am Post subject: mirrorq program |
|
|
Novice
Joined: 16 Mar 2005 Posts: 12
|
I had intended to use the mirrorq program to copy messages coming in and out for auditing purposes. I was doing some testing and found it was working well until I had another programmer initiate a message put through some vendor software. The message did not get copied. I do not have access to the source for these vendor programs.
I thought I would see if anyone here could offer some possible reasons the mirrorq program would not work, before I contacted the vendor. Any ideas??? Thanks in advance! The MQ server is a windows box running MQ 5.3.0.2. |
|
Back to top |
|
 |
clindsey |
Posted: Tue May 03, 2005 7:54 am Post subject: |
|
|
Knight
Joined: 12 Jul 2002 Posts: 586 Location: Dallas, Tx
|
Brody,
I am the author of mirrorq and I recently debugged a problem with an adapter that would not work with mirrorq. The reason was that the adapter was doing 2 MQOPENs on the output queue without doing a close before the second MQOPEN. mirrorq keeps and internal list of open queues to associate the handle with a queue name. The queues can appear in the list only one time and having an app do multiple opens invalidates the list.
This could be your problem. If the vendor cannot tell you if they are doing multiples MQOPENs, you could run a trace to find out.
Also, does the vendor app do local puts or do they come from a remote qmgr. If so, have you tested amqsput remotely? In other words, see if you can isolate the problem explicitly to the vendor program.
Charlie |
|
Back to top |
|
 |
Brody |
Posted: Tue May 03, 2005 12:48 pm Post subject: |
|
|
Novice
Joined: 16 Mar 2005 Posts: 12
|
clindsey,
Thanks for your quick response.
I've turned on tracing, but I'm having a hard time reading the trace files. I've done some searches on these forums and consulted the documentation, but wasn't able to find any help on reading them. Can you direct me to some documentation on this? I'd like to be able to prove/disprove that the situation you decribed is happening here. I've done searches on 20+ trace files and can't seem to even find one MQPut. Thanks again! |
|
Back to top |
|
 |
clindsey |
Posted: Tue May 03, 2005 2:17 pm Post subject: |
|
|
Knight
Joined: 12 Jul 2002 Posts: 586 Location: Dallas, Tx
|
I believe you can do this from the GUI console, but I prefer running from a command window.
CD to <mqtop>\errors
Clear out any trace files in the <mqtop>\errors directory, e.g delete *.trc.
Enter strmqtrc -t detail -t all
Run your test program ( from a different window of GUI ... doesn't matter)
Enter endmqtrc
Locate the file that has your application name in it.
For example, enter findstr -i amqsput *.trc ( assume amqsput was the test)
This will show you the filename of the trace file you want to look at.
Edit this file and search for MQOPEN. You will find an entry like
00000953 16:59:58.469427 2672.1 --{ MQOPEN
Just below this, you will see 2 data sections. You will see the queue name in the 2nd data section on the first line of the eye catcher area on the right. Verify the open was on the queue name of interest.
This MQOPEN completes with a line like:
00000ADE 16:59:58.474926 2672.1 --} MQOPEN (rc=OK)
After this line, you should not see any more MQOPEN. If you do, and there is no MQCLOSE first, then that confirms the problem.
Hope this helps. Let me know how it goes,
Charlie |
|
Back to top |
|
 |
Brody |
Posted: Tue May 24, 2005 9:54 am Post subject: |
|
|
Novice
Joined: 16 Mar 2005 Posts: 12
|
If I'm looking at the trace file correctly, I don't see an open on the queue that I have mirrored. I've requested some documentation on these programs from the vendor and haven't received anything to this point.
Another thought I had was that this vendor program is using a client connection table to get a client connection and put messages. Do you think this could be causing problems???
Thanks!
Brody |
|
Back to top |
|
 |
clindsey |
Posted: Tue May 24, 2005 11:18 am Post subject: |
|
|
Knight
Joined: 12 Jul 2002 Posts: 586 Location: Dallas, Tx
|
I assume you mean client channel table?? If so, I don't think that would have any affect on the problem.
You can email your traces to me if you want and I will take a look. In the note, include the name of the program you ran and the name of the input queue.
Charlie
Last edited by clindsey on Thu Dec 08, 2005 6:06 am; edited 1 time in total |
|
Back to top |
|
 |
Brody |
Posted: Tue May 24, 2005 11:24 am Post subject: |
|
|
Novice
Joined: 16 Mar 2005 Posts: 12
|
Yes, client channel table is what I meant. Once again I appreciate your quick response.
I'll send over the trace files and additional information hopefully before I leave today. Otherwise, first thing in the morning. Thanks!
Brody |
|
Back to top |
|
 |
|