|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MQ message and activity finish times (UPES) |
« View previous topic :: View next topic » |
Author |
Message
|
nwhi |
Posted: Fri May 06, 2005 7:56 am Post subject: MQ message and activity finish times (UPES) |
|
|
Apprentice
Joined: 19 Dec 2002 Posts: 25 Location: UK
|
With good old UPES and MQ/XML messaging, I've been asked to consider a failure scenario. Thought it might be interesting to record the answer...
The question is: If MQ workflow is down, for whatever reason, but an application is still posting 'Activity complete' messages onto the XMLINPUTQ, then when Workflow is restarted, will the timestamps of the MQ messages be used as the finish times for the Activities, or will they all show the actual time that MQ workflow processed them?
Similarly for ProcessTemplateCreateAndStartInstance / Execute - will the start time of the process be taken from the MQ message or just be the time when MQ workflow gets round to processing the message?
The former seems sensible, but I suspect the later is what happens. The only reason I ask is that the 'ActImplInvoke' message written out by workflow does have an MQ expiry date/time set to mirror the Activity Expiry time (i it has one).
Anyone know the quick answer to this. I'll go off now any try some tests over the weekend anyway.
cheers,
Nick _________________ Nick Whittle
IBM Certified Solutions Designer -
WebSphere MQ Workflow V3.4
MQSolutions (UK) Ltd |
|
Back to top |
|
 |
nwhi |
Posted: Wed May 11, 2005 6:52 am Post subject: And the answer is.... |
|
|
Apprentice
Joined: 19 Dec 2002 Posts: 25 Location: UK
|
As suspected, the current datetimestamp used as the audit (i.e. last modified, finished etc.) time is when the execution server gets round to processing the messages is ... NOT the time the message was put on the queue.
I guess the only way to record the timestamp (when a WebService is called and MQ message is put onto a queue) is to make the it part of the data structure, then store this for each Activity and the Process we want to measure.
Then, to get accurate process elapsed times (regardless of whether MQWF was up and running or not), we have to write a custom report that takes the date/time from the Process Output data structure timestamp element (assuming this is mapped from the last Activity in the process), and subtract the date/time from the Process Input data structure element. The pain is:
a> we have to do this manually
b> the transformation of a STRING datetimestamp into something that can be used in date/time calculations is notoriously tricky.
Not an elegant solution - will try harder to get the business to accept that MQWF rarely fails, and it is by far the exception rather than the norm. Even if it does happen, so long as the system is up and running again fairly quickly, it will have little effect on the overall E2E process times (we have several manual process steps)
I'll double check with the Workflow labs that there is no better way...
Nick _________________ Nick Whittle
IBM Certified Solutions Designer -
WebSphere MQ Workflow V3.4
MQSolutions (UK) Ltd |
|
Back to top |
|
 |
jmac |
Posted: Wed May 11, 2005 6:59 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Thanks for the info Nick. _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|