Author |
Message
|
AlexeiSkate |
Posted: Thu Mar 20, 2003 1:27 pm Post subject: [Solved] General Question on Trigger Monitor |
|
|
Centurion
Joined: 10 Apr 2002 Posts: 123
|
When I turn on the trigger monitor application with the -runmqtrm command, it opens up a Dos window that is continuously running. Would this be desirable in a production environment to have a Dos window opened continuously like that? Is there another way around this or would it be better to run my application in batch mode? I just don't want anyone to accidently close the Dos window and hence stop my application program from being triggered.
Thanks,
Alex |
|
Back to top |
|
 |
Ratan |
Posted: Thu Mar 20, 2003 1:34 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
From what I understand your environment is windows. You can configure your trigger monitor in MQSeries services. That way it wouldnot open a DOS window.
-Laze |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Mar 20, 2003 1:58 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You can also set up a scheduled task in 2000 (and XP?) that starts runmqsc. You can set it up to run in the background so that the dos window is never visible. |
|
Back to top |
|
 |
nimconsult |
Posted: Thu Mar 20, 2003 11:36 pm Post subject: |
|
|
 Master
Joined: 22 May 2002 Posts: 268 Location: NIMCONSULT - Belgium
|
You should normally start the trigger monitor as a service (configured in the MQ Series services snap-in).
With this method you do not rely on doing a logon on the server and running a command. The trigger monitor will start automatically at boot time without even having to log onto the machine. _________________ Nicolas Maréchal
Senior Architect - Partner
NIMCONSULT Software Architecture Services (Belgium)
http://www.nimconsult.be |
|
Back to top |
|
 |
AlexeiSkate |
Posted: Tue Apr 01, 2003 7:50 am Post subject: |
|
|
Centurion
Joined: 10 Apr 2002 Posts: 123
|
Hi,
I went into MQServices and under my queue manager defined a new Custom Services called 'MQAdapter'. For the MQAdapter properties Start Command I typed in "rumqtrm -m OPM.QM -q INITIATION.LQ" and then starts the service. However this didn't seem to trigger the adapter when a message is placed into the required queue. Is there something else I am missing in the MQServices definition? Thanks for any help. |
|
Back to top |
|
 |
vennela |
Posted: Tue Apr 01, 2003 7:58 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
Program Files -> IBM WebSphere MQ -> WebSphere MQ Services ->
Select the QMGR you want.
Right click -> new -> Trigger Monitor
-------
Venny |
|
Back to top |
|
 |
AlexeiSkate |
Posted: Tue Apr 01, 2003 9:08 am Post subject: |
|
|
Centurion
Joined: 10 Apr 2002 Posts: 123
|
Thanks Venella.
Do you also know if I need to define my process definition differently. Currently I've defined it as the following:
DEFINE PROCESS(MYPROC) REPLACE +
DESCR('Define my process definition') +
APPLTYPE(WINDOWSNT) +
APPLICID('c:\Run c:\adapter.properties')
The MQSeries Application Programming Guide says that to run the started application in the background under Windows NT, I must prefix the name of my application within the trigger message's ApplId field with the START command, e.g START AMQSECHA /B. So I modified my process definition APPLICID to 'START c:\Run c:\adapater.properties' /B but so far it looks like all of my trigger messages are going to the Dead Letter Queue. |
|
Back to top |
|
 |
vennela |
Posted: Tue Apr 01, 2003 9:20 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
I think the problem is with passing an argument to your batch file.
(I may be completely wrong because I have little Windows experience)
Look at this post by Brandon. You will know what to do.
http://www.mqseries.net/phpBB2/viewtopic.php?t=5&highlight=applicid+start
"Take the ampersand out of the APPLICID field and throw it into the ENVRDATA field".
So I guess you will have to put the argument (the properties file) in the ENVDATA field.
But the above post is still worthwhile to look at.
-------
Venny |
|
Back to top |
|
 |
tillywern |
Posted: Tue Apr 01, 2003 12:01 pm Post subject: DEAD.LETTER.QUEUE???? |
|
|
 Centurion
Joined: 28 Jan 2003 Posts: 109 Location: Colorado
|
If messages are going to the dead letter queue then something is worng with setup. The trigger monitor must be started on a queue.. You can use the system default one or create another one...
First get the triggering working when running in a window.. Then get the service running.
So the messagea on the dead letter wueue are probably your trigger messages destined for the initation queue. So set up your data queue... Set up your initiation queue... Specify the initq as the recipient of trigger messages. Set triggering to FIRST or whatever... For the time being EVERY would generate allot of trigger messages in the intq but don't run it that way in the future. Send a message to the data queue and a message should show up in both the data queue and the init q. The start the trigger monitor on the init queue from the command line.
Hope this helps.
After everything is working then you can shove the trigger monitor into the background.
PS: USE the MQTMC2 data structure instead of the original.. the TMC2 version passea all trigger data to the spawned process as character.. It makes it easier to troubleshoot.... |
|
Back to top |
|
 |
AlexeiSkate |
Posted: Tue Apr 01, 2003 2:29 pm Post subject: |
|
|
Centurion
Joined: 10 Apr 2002 Posts: 123
|
Hi,
My triggered application runs fine when I enter at a DOS prompt the command runmqtrm -m QMGR -q INITATION.LQ, which brings up another DOS windows.
But when I attempt to use the trigger monitor that I've defined in MQSeries Service which has its parameter queue defined as INITIATION.LQ and my process definition has its application identifier defined as "START /b c:\Run c:\adapter.properties", my message remained on the triggered queue. I have the trigger monitor with the Status of "Running". I should be able to put my message onto the triggered queue and the trigger monitor defined in MQSeries Service should be able to automatically trigger my adapter in the background without any intervention from me and no DOS window is needed, correct? |
|
Back to top |
|
 |
AlexeiSkate |
Posted: Fri Jul 25, 2003 1:51 pm Post subject: |
|
|
Centurion
Joined: 10 Apr 2002 Posts: 123
|
|
Back to top |
|
 |
|