使用 REST 监控 API 显示队列相关统计信息
作用
报告与查询相关的监视数据。URI
使用具有以下 IBM® IoT MessageSight 监视 URI 的 IBM IoT MessageSight REST API GET 方法:
http://<admin-endpoint-IP:Port>/ima/v1/monitor/Queue
对象配置数据
提供查询参数来请求您希望在 JSON 有效内容中返回的统计信息。以下示例使用 cURL 创建与队列相关的统计信息:
curl -X GET http://127.0.0.1:9089/ima/v1/monitor/Queue?Name=Name%26StatType=StatType%26ResultCount=ResultCount
其中:- Name
- 指定要收集其数据的队列的名称。
- 您可以使用星号 (*) 来匹配 0 个或更多的字符。
- 缺省值为 *
- ResultCount
- 指定要返回的最大结果数
- 该值可以是下列值中的任何一个:10、25、50、100。
- 缺省值为 25。
- StatType
- 指定对结果进行排序所依据的数据类型。
- 该值可以是下列任一值:
-
- BufferedMsgsHighest
- 对监视数据进行排序,从累积消息最多的队列开始。
- 此值是缺省值。
-
- BufferedMsgsLowest
- 对监视数据进行排序,从累积消息最少的队列开始。
-
- BufferedPercentageHighest
- 对监视数据进行排序,从缓冲消息数占可缓冲消息总数百分比最高的队列开始。
-
- BufferedPercentageLowest
- 对监视数据进行排序,从缓冲消息数占可缓冲消息总数百分比最低的队列开始。
-
- BufferedHWMPercentHighest
- 达到缓冲消息占可缓冲的消息总数百分比最高峰值的队列。
-
- BufferedHWMPercentLowest
- 达到缓冲消息占可缓冲的消息总数百分比最低峰值的队列。
-
- ProducedMsgsHighest
- 对监视数据进行排序,从具有最大生成消息数的队列开始。
-
- ProducedMsgsLowest
- 对监视数据进行排序,从具有最小生成消息数的队列开始。
-
- ConsumedMsgsHighest
- 对监视数据进行排序,从具有最大使用消息数的队列开始。
-
- ConsumedMsgsLowest
- 对监视数据进行排序,从具有最小使用消息数的队列开始。
-
- ConsumersHighest
- 对监视数据进行排序,从具有最大使用程序数的队列开始。
-
- ConsumersLowest
- 对监视数据进行排序,从具有最小使用程序数的队列开始。
-
- ProducersHighest
- 对监视数据进行排序,从具有最大生产程序数的队列开始。
-
- ProducersLowest
- 对监视数据进行排序,从具有最小生产程序数的队列开始。
-
- ExpiredMsgsHighest
- 从到期消息数最多的队列开始,对监视数据进行排序。
-
- ExpiredMsgsLowest
- 对监视数据进行排序,从到期消息数最少的队列开始。
-
用法说明
- 命令必须如示例所示采用大写。
- 命令必须按照显示使用双引号。
- 生成的统计信息最长可能过期 60 秒。
- 将返回以下字段:
-
- Name
- 字符串
- 队列的名称。
-
- Producers
- 数值型
- 队列上的活动生产程序数。
-
- Consumers
- 数值型
- 队列上的活动用户数。
-
- BufferedMsgs
- 数值型
- 队列上缓冲等待使用的消息数。
-
- BufferedMsgsHWM
- 数值型
- 自启动服务器或创建队列(以最近的操作为准)以来,队列上缓冲的最大消息数。
-
- BufferedHWMPercent
- 数值型
- 所缓冲的消息的峰值数,是可以缓冲的最大消息数的百分比。
-
- BufferedPercent
- 数值型
- 缓冲消息数占最大缓冲消息数的百分比。
-
- MaxMessages
- 数值型
- 队列上允许的最大缓冲消息数。该值仅作为指导原则,而不是绝对限制。如果系统在运行时承受了压力,那么队列中的缓冲消息数可能会比 MaxMessages 值略高。
-
- ProducedMsgs
- 数值型
- 自启动服务器或创建队列(以最近的操作为准)起发送至队列的消息数。
-
- ConsumedMsgs
- 数值型
- 自启动服务器或创建队列(以最近的操作为准)起队列使用的消息数。
-
- RejectedMsgs
- 数值型
- 由于已达到最大缓冲消息数而未发送至队列的消息数。
-
- ExpiredMsgs
- 数值型
- 自启动服务器或创建队列(以最近的操作为准)以来,队列上到期的消息数。
-
示例
以下示例使用 cURL 显示如何使用 GET 方法来创建有关消息积压程度最高的队列的统计信息:
curl -X GET http://127.0.0.1:9089/ima/v1/monitor/Queue?Name=*%26StatType=BufferedMsgsHighest%26ResultCount=10
以下示例显示了对 GET 方法(用于创建有关消息积压程度最高的队列的统计信息)的成功响应示例:
{ "Version":"v1", "Queue": [ { "Name":"MyQueue","Producers":5,"Consumers":2,"BufferedMsgs":50,"BufferedMsgsHWM":40,"BufferedHWMPercent":25,
"BufferedPercent":14,"MaxMessages":134,"ProducedMsgs":14670,"ConsumedMsgs":10145,"RejectedMsgs":100,"ExpiredMsgs":10 }
] }