调用GetQueueAttributes接口获取某个已创建队列的属性。返回属性除了创建队列时设置的可设置属性外,还可以获取到队列创建时间、队列属性最后修改时间以及队列中的各类消息统计数(近似值)。
授权信息
默认仅限阿里云账号使用本接口,RAM用户只有在被授予了相关API操作权限后方可使用。本接口的授权信息如下表所示。更多信息,请参见授权策略和示例。
Name | Value |
---|---|
API | GetQueueAttributes |
RAM授权操作 | mns:GetQueueAttributes |
资源 | acs:mns:$region:$accountid:/queues/$queueName |
请求消息
请求消息由请求行、HTTP头和消息体三部分组成:
- 请求行
GET /queues/$queueName HTTP/1.1
- 特有Request Header
无。
- Request Body
无。
返回消息
返回消息由返回状态行、HTTP头和消息体三部分组成:
- HTTP Status Code
HTTP/1.1 200 OK
- 特有Response Header
无。
- Response Body
返回的结果为XML格式,格式为:
<Queue>Attribute Element List</Queue>
参数名称 类型 示例值 描述 QueueName String demo-queue Queue的名称。 CreateTime Long 1250700999 Queue的创建时间,从1970-01-01 00:00:00到现在的时间。 LastModifyTime Long 1250700999 修改Queue属性信息最近时间,从1970-01-01 00:00:00到现在的时间。 DelaySeconds Integer 30 发送到该Queue的所有消息的延迟时间,发送到队列的消息经过此参数设定的延时时间后,才能被消费,单位为秒。 MaximumMessageSize Integer 65536 发送到该Queue的消息体的最大长度,单位为Byte。 MessageRetentionPeriod Integer 65536 消息在该Queue中最长的存活时间,从发送到该队列开始经过此参数指定的时间后,不论消息是否被取出过都将被删除,单位为秒。 PollingWaitSeconds Integer 0 当Queue消息量为空时,针对该Queue的ReceiveMessage请求最长的等待时间,单位为秒。 ActiveMessages Integer 20 在该Queue中处于Active状态的消息总数,为近似值。 InactiveMessages Int 0 在该Queue中处于Inactive状态的消息总数,为近似值。 DelayMessages Int 0 在该Queue中处于Delayed状态的消息总数,为近似值。 LoggingEnabled Boolean True 是否开启日志管理功能。 - True:启用。
- False:停用。
示例
请求示例:
GET /queues/$queueName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAM****
返回示例:
HTTP/1.1 200 OK
Content-Type=text/xml;charset=utf-8
Content-Length:145
x-mns-request-id:512B2A634403E52B1956****
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="UTF-8"?>
<Queue xmlns="http://mns.aliyuncs.com/doc/v1/">
<QueueName>demo-queue</QueueName >
<CreateTime>1250700999</CreateTime >
<LastModifyTime>1250700999</LastModifyTime>
<VisibilityTimeout>60</VisibilityTimeout >
<MaximumMessageSize>65536</MaximumMessageSize>
<MessageRetentionPeriod>65536</MessageRetentionPeriod>
<DelaySeconds>30</DelaySecond>
<PollingWaitSeconds>0</PollingWaitSeconds>
<InactiveMessages>0</InactiveMessages>
<ActiveMessages>20</ActiveMessages>
<DelayMessages>0</DelayMessages>
<LoggingEnabled>True</LoggingEnabled>
</Queue>
错误码
错误码 | 错误信息 | HTTP状态码 | 描述内容 |
---|---|---|---|
QueueNotExist | The queue name you provided is not exist. | 404 | 队列不存在,请先创建队列。 |