Monitoring IBM Websphere MQ

I am trying to get some performance statistics from IBM WebSphere MQ for monitoring using Spring Source Hyperic HQ.

I am after the input queue and the deactivation speed, as well as the queue depth of several local queues, to ensure delivery and use of messages by our local application.

Initially, an attempt to obtain data using WMI and Windows performance counters, however, it seems that on one of our servers the counters are not available for any of the local queues (just loading temporary queues), and on the other, the counters are available, but they do not always return the value correctly, although WMI

I tried PCF (using MQIA_MSG_DEQ_COUNT ) that did not provide the requested counter. MQSC (using DISPLAY QUEUE and DISPLAY QSTATUS ), which does not seem to support queue speeds, is only providing the date and time of the last message. /

Has anyone got an idea on how to get WMI and performance counters to work correctly, or an alternative to WMI that would provide the statistics I need?

+4
source share
1 answer

As for MQIA_MSG_DEQ_COUNT , you should be aware that the RESET_QUEUE_STATISTICS command that returns this attribute is what I like to call the "WMQ quantum physics property" because the act of observing a value resets the value. This is normal if you are the only one interested in the value and you only have one request stream. But if you have several requests at once, they all reset the counter to zero at each request, each of which goes to other numbers. This aspect makes RESET_QUEUE_STATISTICS limited use for real-time debugging and is not suitable for reliable statistics collection.

An alternative is to use MQ Accounting and Statistics. To force QMgr to create accounting and statistics messages, they must be included either in QMgr or in queue mode. Instructions on how to enable them can be found in the section on queue statistics .

Note that statistics are reported to the event queue and must be retrieved and analyzed. A link to the documentation for parsing event messages is provided in the Queue Statistics Message Data section. There is an example amqsmon program in the source format that shows how to retrieve and format statistics messages. A compiled version is also provided to provide an easy-to-read list of such messages.

As soon as you turn on the statistics of the queues (s) you are interested in and can analyze the messages, simply indicate your parser in the corresponding queue of events and take the statistics. The following is an example of amqsmon output showing available statistics:

  RecordType: QueueStatistics QueueManager: 'saturn.queue.manager' IntervalStartDate: '2005-04-30' IntervalStartTime: '15.09.02' IntervalEndDate: '2005-04-30' IntervalEndTime: '15.39.02' CommandLevel: 600 ObjectCount: 3 QueueStatistics: QueueName: 'LOCALQ' CreateDate: '2005-03-08' CreateTime: '17.07.02' QueueType: Predefined QueueDefinitionType: Local QMinDepth: 0 QMaxDepth: 18 AverageQueueTime: [29827281, 0] PutCount: [26, 0] PutFailCount: 0 Put1Count: [0, 0] Put1FailCount: 0 PutBytes: [88, 0] GetCount: [18, 0] GetBytes: [52, 0] GetFailCount: 0 BrowseCount: [0, 0] BrowseBytes: [0, 0] BrowseFailCount: 1 NonQueuedMsgCount: 0 ExpiredMsgCount: 0 PurgedMsgCount: 0 

This and other examples are given in the manual in the corresponding section, examples of amqsmon .

+4
source

Source: https://habr.com/ru/post/1345554/


All Articles