I was testing out my java program for processing PCF messages and snagged a “problem” with queue high events.
I had set max depth of the queue to 1.
I put two messages out of syncpoint, and got the following events on the SYSTEM.ADMIN.PERFM.EVENT queue.
"PCFHeader":{ "Type" :MQCFT_EVENT ,"ParameterCount" :6 ,"Command" :MQCMD_PERFM_EVENT ,"Control" :MQCFC_LAST ,"Reason" :Queue_Depth_High ,"MsgSeq" :1 ,"Version" :1 } ,"QMGR_Name" :QMA ,"Base_Object_Name/mqca_Base_Q_Name" :CP0000 ,"Time_Since_Reset" :53 ,"High_Q_Depth" :1 ,"Msg_Enq_Count" :1 ,"Msg_Deq_Count" :0
and
PCFHeader":{ "Type" :MQCFT_EVENT ,"ParameterCount" :6 ,"Command" :MQCMD_PERFM_EVENT ,"Control" :MQCFC_LAST ,"Reason" :Queue_Full ,"MsgSeq" :1 ,"Version" :1 } ,"QMGR_Name" :QMA ,"Base_Object_Name/mqca_Base_Q_Name" :CP0000 ,"Time_Since_Reset" :0 ,"High_Q_Depth" :1 ,"Msg_Enq_Count" :0 ,"Msg_Deq_Count" :0
I think this is telling me
- The Queue high event occurred 53 seconds after some other event
- One message was put, causing the queue high event
- The queue full event occurred 0 seconds after some event. The documentation says “Time, in seconds, since the statistics were last reset”
- A message was put to the queue, unsuccessfully, as Enq_Count is zero.
I think the documentation is not clear. I did not issue a reset statistics command. The time since reset varies between 0 and over 6000 seconds. My qmgr Stats interval was 10 seconds.
I think the time_since_reset is time since previous event or something else, so looks pretty useless. When I issued a reset qmgr reset(Statistics) it made no difference to the time since reset.
This time value is MQIA_TIME_SINCE_RESET in the PCF.
I noticed that the event messages are non persistent, so make sure you process the messages before you shut down your queue manager!
QD events reset queue statistics same as MQCMD_RESET_Q_STATS.
LikeLike
Good point – but I could not find it in the doc!
LikeLike
Like all IBM MQ docs you just need to know where too look:
[Performance event statistics](https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_9.1.0/com.ibm.mq.mon.doc/q036330_.htm)
Performance event statistics are reset when any of the following changes occur:
A performance event occurs (statistics are reset on all active queue managers).
A queue manager stops and restarts.
The PCF command,
Reset Queue Statistics, is issued from an application program.
On z/OS® only, the RESET QSTATS command is issued at the console.
LikeLike
Event messages are not non-persistent, they are the persistence of your event queue’s DEFPSIST attribute. Although, you should process them in a timely manner none-the-less, you can choose their persistence.
LikeLiked by 1 person
Thank you, as with many things it is obvious once you see it.
LikeLike