![[MQ 9.3.3 Jul 2023]](ng933.gif)
![[z/OS]](ngzos.gif)
Queue data records Version 9.3.3 release
IBM® MQ 9.3.3 enhances the SMF queue statistics records introduced at IBM MQ 9.3.0 and enhanced in IBM MQ 9.3.1. The latest improvements to the queue statistics give insight into what happened with your queue during the last SMF interval. This includes information on message flow, expiry, high and low watermarks and more.
For IBM MQ 9.3.0 use the information in Queue data records.
For IBM MQ 9.3.1 use the information in Queue data records Version 9.3.1 release.
The format of the queue statistics data record is described in assembler macro thlqual.SCSQMACS(CSQDQQST).
- QQSTID – Control block identifier
- The identifier for the queue statistics control block; is always
x‘D80F’
. - QQSTLL – Length of control block
- The length of a queue statistics record.
- QQSTEYEC – Control block eyecatcher
- The eyecatcher used to make identification of the control block easier; is always
‘QQST’
- QQSTQNAM – Queue name
- The name of the queue.
- QQSTFLAG
- An array of bits containing the following information about the queue:
- QQSTDISP – Queue disposition
- This bit identifies whether the queue is of private or shared disposition. If the bit is on, then it is a shared queue.
- QQSTPART – Partial record identifier
- This bit identifies whether the record is a full or partial record. If the bit is on, then it is a partial record. When this flag is set there was an issue accessing the information on the queue, for example if there is a CF structure failure.
- QQSTUNCM – Uncommitted changes pending
- This bit indicates whether there are any uncommitted changes (puts and gets) pending for the queue. If the bit is on, there are uncommitted changes.
- QQSTPSID – Page set ID
- The page set ID where the queue is located, if allocated and a private queue. If the queue is a
shared queue, or a private queue that does not have a page set assigned to it, this field is set to
-1 (
x’FFFF’
). - QQSTBPID – Buffer pool ID
- The buffer pool ID used by the queue, if allocated and a private queue. If the queue is a shared
queue, or a private queue that does not have a buffer pool assigned to it, this field is set to -1
(
x’FFFF’
). - QQSTQSGN – QSG name
- The Queue Sharing Group name that the queue manager is a member of, if it is a shared queue. If the queue is a private queue this field is blank.
- QQSTCFST – CF Structure name
- The coupling facility (CF) structure name the queue uses if it is a shared queue. If the queue is a private queue this field is blank.
- QQSTDPTH – Current depth
- The depth of the queue at the time the SMF data was captured.
- QQSTOPCT – Current open for output count
- The number of handles that are currently open for output for the queue at the time when the SMF data was captured. For shared queues, the number returned applies only to the queue manager generating the record. The number is not the total for all the queue managers in the queue sharing group.
- QQSTIPCT – Current open for input count
- The number of handles that are currently open for input for the queue at the time when the SMF data was captured. For shared queues, the number returned applies only to the queue manager generating the record. The number is not the total for all the queue managers in the queue sharing group.
- QQSTMAGE – Oldest message age
- The age, in seconds, of the oldest message on the queue.
- QQSTQTST – Short term QTIME
- The interval, in microseconds, between messages being put on the queue and then being destructively read. Value based on the last few messages processed. For shared queues, the values shown are for measurements collected on this queue manager only.
- QQSTQTLT – Long term QTIME
- The interval, in microseconds, between messages being put on the queue and then being destructively read. The value is based on a larger sample of the recently processed messages. For shared queues, the values shown are for measurements collected on this queue manager only.
- QQSTLPUT – Last put date/time
- The time, in store clock format, at which the last message was put to the queue since the queue manager started. For shared queues, the value shown is for messages put by this queue manager only.
- QQSTLGET – Last get date/time
- The time, in store clock format, at which the last message was retrieved from the queue since the queue manager started. For shared queues, the value shown is for messages put by this queue manager only.
- QQSTDPHI – Highest depth
- The highest depth reached by the queue during the SMF interval.
- QQSTDPLO – Lowest depth
- The lowest depth reached by the queue during the SMF interval.
- QQSTPUTS – MQPUT count
- The number of messages put to the queue using MQPUT during the SMF interval.
- QQSTPUT1 – MQPUT1 count
- The number of messages put to the queue using MQPUT1 during the SMF interval.
- QQSTNPPT – Non-persistent MQPUT count
- The number of non-persistent messages put to the queue using MQPUT during the SMF interval.
- QQSTPPT – Persistent MQPUT count
- The number of persistent messages put to the queue using MQPUT during the SMF interval.
- QQSTNPP1 – Non-persistent MQPUT1 count
- The number of non-persistent messages put to the queue using MQPUT1 during the SMF interval.
- QQSTPP1 – Persistent MQPUT1 count
- The number of persistent messages put to the queue using MQPUT1 during the SMF interval.
- QQSTPUTB – MQPUT bytes
- The number of bytes of message data, including any message properties, put to the queue using MQPUT during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTPT1B – MQPUT1 bytes
- The number of bytes of message data, including any message properties, put to the queue using MQPUT1 during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTNPPB – Non-persistent MQPUT bytes
- The number of bytes of non-persistent message data, including any message properties, put to the queue using MQPUT during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTPPB – Persistent MQPUT bytes
- The number of bytes of persistent message data, including any message properties, put to the queue using MQPUT during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTNP1B – Non-persistent MQPUT1 bytes
- The number of bytes of non-persistent message data, including any message properties, put to the queue using MQPUT1 during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTP1B – Persistent MQPUT1 bytes
- The number of bytes of persistent message data, including any message properties, put to the queue using MQPUT1 during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTFLPT – Failed MQPUT count
- The number of MQPUT calls targeting the queue, which failed with a completion code of MQCC_FAILED, during the SMF interval.
- QQSTFLP1 – Failed MQPUT1 count
- The number of MQPUT1 calls targeting the queue, which failed with a completion code of MQCC_FAILED, during the SMF interval.
- QQSTFPTC – Fast puts to a waiting getter count
- The number of MQPUT and MQPUT1 calls targeting the queue, that were fast put to a waiting getter
during the SMF interval. Note: Put to a waiting getter is a technique whereby a message might not actually be put onto a queue if there is an application already waiting to get the message. Certain conditions must be satisfied for this to occur, in particular the message must be non-persistent and the putting and getting application must be processing the message outside syncpoint control.
If these conditions are met, then the message is transferred from the putting application’s buffer into the getting application’s buffer without actually touching the IBM MQ queue. This removes a lot of processing involved in putting the message on the queue and therefore leads to increased throughput and lower CPU costs.
- QQSTFPTB – Fast puts to a waiting getter bytes
- The number of message and properties bytes from MQPUT and MQPUT1 calls targeting the queue, that were fast put to a waiting getter during the SMF interval. This does not include message headers in the calculation of the size.
- QQSTSTRM – Streamed message count
- The number of messages that were successfully streamed from the queue during the interval. This is always zero if STREAMQ is not set for the queue.
- QQSTMSMI – Minimum message size put
- The minimum message size, in bytes, put to the queue during the SMF interval.
- QQSTMSMA – Maximum message size put
- The maximum message size, in bytes, put to the queue during the SMF interval.
- QQSTMSAV – Average message size put
- The average message size, in bytes, put to the queue during the SMF interval.
- QQSTGETS – Destructive MQGET count
- The number of messages got from the queue using destructive MQGET during the SMF interval.
- QQSTNPDG – Non-persistent destructive MQGET count
- The number of non-persistent messages got from the queue using destructive MQGET during the SMF interval.
- QQSTPDG – Persistent destructive MQGET count
- The number of persistent messages got from the queue using destructive MQGET during the SMF interval.
- QQSTGETB – Destructive MQGET byte count
- The number of message and properties bytes got from the queue using destructive MQGET during the SMF interval.
- QQSTNPDB – Non-persistent destructive MQGET bytes
- The number of non-persistent message and properties bytes got from the queue using destructive MQGET during the SMF interval.
- QQSTPDB – Persistent destructive MQGET bytes
- The number of persistent message and properties bytes got from the queue using destructive MQGET during the SMF interval.
- QQSTBRWS – Non-destructive MQGET count
- The number of messages browsed from the queue during the SMF interval.
- QQSTNPBR – Non-persistent non-destructive MQGET count
- The number of non-persistent messages browsed from the queue during the SMF interval.
- QQSTPBR – Persistent non-destructive MQGET count
- The number of persistent messages browsed from the queue during the SMF interval.
- QQSTBRWB – Non-destructive MQGET bytes
- The number of message and properties bytes browsed from the queue during the SMF interval.
- QQSTNPBB – Non-persistent non-destructive MQGET bytes
- The number of non-persistent message and properties bytes browsed from the queue during the SMF interval.
- QQSTPBB – Persistent non-destructive MQGET bytes
- The number of persistent message and properties bytes browsed from the queue during the SMF interval.
- QQSTFLGT – Failed destructive MQGET count
- The number of destructive MQGET calls targeting the queue, that failed with a completion code of MQCC_FAILED, during the SMF interval.
- QQSTNMAG – Failed destructive MQGET with MQRC_NO_MSG_AVAILABLE count
- The number of destructive MQGET calls, without wait, targeting the queue, that failed with both a completion code of MQCC_FAILED and a return code of MQRC_NO_MSG_AVAILABLE, during the SMF interval.
- QQSTTMFB – Failed destructive MQGET with MQRC_TRUNCATED_MSG_FAILED count
- The number of destructive MQGET calls targeting the queue, that failed with both a completion code of MQCC_WARNING and a return code of MQRC_TRUNCATED_MSG_FAILED, during the SMF interval.
- QQSTFLGW – No message available for destructive MQGET with a wait count
- The number of times that there is no message available for destructive MQGET calls with a wait, targeting the queue, causing the MQGET to continue waiting, during the SMF interval.
- QQSTRDGW – Re-driven destructive MQGET with a wait count
- The number of times that destructive MQGET calls with a wait are re-driven to check if there is a message on the queue that matches their criteria, during the SMF interval.
- QQSTFLBW – No message available for non-destructive MQGET with a wait count
- The number of times that there is no message available for non-destructive MQGET calls with a wait, targeting the queue, causing the MQGET to continue waiting, during the SMF interval.
- QQSTRDBW – Re-driven non-destructive MQGET with a wait count
- The number of times that non-destructive MQGET calls with a wait are re-driven to check if there is a message on the queue that matches their criteria, during the SMF interval.
- QQSTSAGT – Destructive MQGET with MQRC_SIGNAL_REQUEST_ACCEPTED count
- The number of destructive MQGET calls targeting the queue, that complete with both a completion code of MQCC_WARNING and a return code of MQRC_SIGNAL_REQUEST_ACCEPTED, during the SMF interval.
- QQSTSABR – Non-destructive MQGET with MQRC_SIGNAL_REQUEST_ACCEPTED count
- The number of non-destructive MQGET calls targeting the queue, that complete with both a completion code of MQCC_WARNING and a return code of MQRC_SIGNAL_REQUEST_ACCEPTED, during the SMF interval.
- QQSTIPHI – High watermark for IPPROC
- The highest number of concurrent input handles open on the queue during the SMF interval.
- QQSTIPLO – Low watermark for IPPROC
- The lowest number of concurrent input handles open on the queue during the SMF interval.
- QQSTOPHI – High watermark for OPPROC
- The highest number of concurrent output handles open on the queue during the SMF interval.
- QQSTOPLO – Low watermark for OPPROC
- The lowest number of concurrent output handles open on the queue during the SMF interval.
- QQSTOPEN – Successful MQOPEN count
- The number of times the queue was successfully opened during the SMF interval. This does not include opens performed as part of an MQPUT1 call.
- QQSTCLOS – MQCLOSE count
- The number of times the queue was successfully closed using MQCLOSE, during the SMF interval.
- QQSTINQR – MQINQ count
- The number of MQINQ calls that completed with a completion code of MQCC_OK or MQCC_WARNING, during the SMF interval.
- QQSTSET – MQSET count
- The number of MQSET calls that completed with a completion code of MQCC_OK during the SMF interval.
- QQSTEXPR – Expired messages count
- The number of expired messages cleared from the queue during the SMF interval.
- QQSTRBPT – Rolled back MQPUT counts
- The number of messages that were put to the queue, that have been rolled back off the queue, during the SMF interval.
- QQSTRBGT – Rolled back MQGET counts
- The number of messages destructively read from the queue, that have been rolled back onto the queue, during the SMF interval.