[英]IBM Websphere MQ Monitoring
我一直在努力从IBM WebSphere MQ中获取一些性能统计数据,以便使用Spring Source的Hyperic HQ进行监控。
我正在将消息排队并将队列深度与一些本地队列一起排队,以确保消息被传递给本地应用程序并由我们的本地应用程序使用。
最初尝试使用WMI和Windows性能计数器检索数据,但似乎在我们的一台服务器上,计数器不可用于任何本地队列(只是一堆临时队列),另一方面计数器可用但是不要总是通过WMI正确返回值。
我已经尝试了PCF(使用MQIA_MSG_DEQ_COUNT
),它不会提供请求的计数器。 MQSC(使用DISPLAY QUEUE
& DISPLAY QSTATUS
)似乎不支持排队率 - 只提供最后一条消息获取/放置日期和时间。
任何人都知道如何让WMI和性能计数器正常工作或者提供WMI的替代方案来提供我需要的统计数据?
关于MQIA_MSG_DEQ_COUNT
,您应该知道返回此属性的RESET_QUEUE_STATISTICS
命令是我喜欢称之为“WMQ的量子物理属性”,因为观察该值的行为会重置该值。 如果您是唯一一个询问价值并且您只有一个询问线程的人,那么这很好。 但如果您同时进行多次查询,他们都会在每次查询时将计数器重置为零,每次查询都会踩到另一个查询的数字。 此方面使RESET_QUEUE_STATISTICS
有限用于实时调试,不适合可靠的统计信息收集。
另一种方法是使用MQ的会计和统计工具。 为了使QMgr生成Accounting和Statistics消息,必须在QMgr或每个队列的基础上启用它们。 有关如何启用它们的说明,请参见手册“ 队列统计信息”部分。
请注意,统计信息将报告给事件队列,并且必须提取和解析。 解析事件消息的文档参考位于队列统计消息数据部分。 有一个名为amqsmon的源格式的示例程序,它显示了如何获取和格式化统计信息。 还提供编译版本以提供这种消息的人类可读列表。
一旦启用了感兴趣的队列的统计信息并有办法解析消息,只需将解析器指向适当的事件队列并收集统计信息。 amqsmon的输出示例显示可用的统计信息如下:
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
本手册中提供了这个和其他示例,其中标题为恰当的, amqsmon示例 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.