SetQueueAttributes
In this article:
SetQueueAttributes#
Description#
Устанавливает значения одного или нескольких атрибутов очереди.
Request Syntax#
POST / HTTP/1.1
Content-type: application/json
{
"QueueUrl": "string",
"Attributes": {
"VisibilityTimeout": "string",
"DelaySeconds": "string",
"MaximumMessageSize": "string",
"MessageRetentionPeriod": "string",
"ReceiveMessageWaitTimeSeconds": "string",
}
}
Request Parameters#
Attributes — Устанавливаемые атрибуты очереди (см. Поддерживаемые атрибуты.
Тип: Object
Необходимо: Да
QueueUrl — URL очереди.
Тип: String
Необходимо: Да
Поддерживаемые атрибуты#
DelaySeconds — Время в секундах, на которое задерживается доставка всех сообщений в очереди.
Тип: String
Необходимо: Нет
Диапазон: От 0 до 900 (15 минут)
MaximumMessageSize — Максимальный размер сообщения в байтах.
Тип: String
Необходимо: Нет
Диапазон: От 1024 до 262144
MessageRetentionPeriod — Время в секундах, в течение которого SQS сохраняет сообщение.
Тип: String
Необходимо: Нет
Диапазон: От 60 до 1209600 (14 дней)
ReceiveMessageWaitTimeSeconds — Время ожидания в секундах для режима длительного опроса.
Тип: String
Необходимо: Нет
Диапазон: От 0 до 20
VisibilityTimeout — Время в секундах, в течение которого сообщение остаётся невидимым после получения.
Тип: String
Необходимо: Нет
Диапазон: От 0 до 43200 (12 часов)
Response Syntax#
HTTP/1.1 200
Content-type: application/json
{
"Success": boolean
}
Response Elements#
Success — Результат операции.
Тип: Boolean
Errors#
InvalidParameterValue — Недопустимое значение параметра, либо атрибут не может быть изменён.
QueueDoesNotExist — Указанная очередь не существует.
Examples#
boto3
import boto3
session = boto3.Session(
aws_access_key_id="<AWS_ACCESS_KEY_ID>",
aws_secret_access_key="<AWS_SECRET_ACCESS_KEY>",
region_name="",
)
sqs_client = session.client(
'sqs',
endpoint_url='https://sqs.ru-msk.k2.cloud/'
)
sqs_client.set_queue_attributes(
QueueUrl='https://sqs.ru-msk.k2.cloud/123456789012/my-queue',
Attributes={
'VisibilityTimeout': '120',
'ReceiveMessageWaitTimeSeconds': '20'
}
)
aws-cli
aws sqs --endpoint https://sqs.ru-msk.k2.cloud/ set-queue-attributes \\
--queue-url https://sqs.ru-msk.k2.cloud/123456789012/my-queue \\
--attributes VisibilityTimeout=120,ReceiveMessageWaitTimeSeconds=20