Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di utilizzo di Amazon SQS AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con Amazon SQS.
Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come usareadd-permission.
- AWS CLI
-
Come aggiungere le autorizzazioni a una coda
Questo esempio consente all' AWS account specificato di inviare messaggi alla coda specificata.
Comando:
aws sqs add-permission --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--labelSendMessagesFromMyQueue--aws-account-ids12345EXAMPLE--actionsSendMessageOutput:
None.-
Per i dettagli sull'API, vedere AddPermission
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecancel-message-move-task.
- AWS CLI
-
Come annullare un’operazione di spostamento di un messaggio
L’esempio
cancel-message-move-taskseguente annulla l’attività di spostamento del messaggio specificata.aws sqs cancel-message-move-task \ --task-handleAQEB6nR4...HzlvZQ==Output:
{ "ApproximateNumberOfMessagesMoved": 102 }Per ulteriori informazioni consulta Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse nella Guida per gli sviluppatori.
-
Per i dettagli sull'API, consulta CancelMessageMoveTask AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarechange-message-visibility-batch.
- AWS CLI
-
Come modificare la visibilità del timeout di più messaggi come batch
Questo esempio modifica la visibilità del timeout dei 2 messaggi specificati impostandola su 10 ore (10 ore * 60 minuti * 60 secondi).
Comando:
aws sqs change-message-visibility-batch --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--entriesfile://change-message-visibility-batch.jsonFile di input (change-message-visibility-batch.json):
[ { "Id": "FirstMessage", "ReceiptHandle": "AQEBhz2q...Jf3kaw==", "VisibilityTimeout": 36000 }, { "Id": "SecondMessage", "ReceiptHandle": "AQEBkTUH...HifSnw==", "VisibilityTimeout": 36000 } ]Output:
{ "Successful": [ { "Id": "SecondMessage" }, { "Id": "FirstMessage" } ] }-
Per i dettagli sull'API, consulta AWS CLI Command ChangeMessageVisibilityBatch
Reference.
-
Il seguente esempio di codice mostra come utilizzarechange-message-visibility.
- AWS CLI
-
Come modificare la visibilità del timeout di un messaggio
Questo esempio modifica la visibilità del timeout del messaggio specificato impostandola su 10 ore (10 ore * 60 minuti * 60 secondi).
Comando:
aws sqs change-message-visibility --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--receipt-handleAQEBTpyI...t6HyQg==--visibility-timeout36000Output:
None.-
Per i dettagli sull'API, consulta ChangeMessageVisibility AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-queue.
- AWS CLI
-
Come creare una coda
Questo esempio crea una coda con il nome specificato, imposta il periodo di conservazione dei messaggi su 3 giorni (3 giorni * 24 ore * 60 minuti * 60 secondi) e imposta la coda DLQ della coda sulla coda specificata con un conteggio massimo di ricezione pari a 1.000 messaggi.
Comando:
aws sqs create-queue --queue-nameMyQueue--attributesfile://create-queue.jsonFile di input (create-queue.json):
{ "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":\"1000\"}", "MessageRetentionPeriod": "259200" }Output:
{ "QueueUrl": "https://queue.amazonaws.com/80398EXAMPLE/MyQueue" }-
Per i dettagli sull'API, consulta CreateQueue AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-message-batch.
- AWS CLI
-
Come eliminare più messaggi in batch
Questo esempio elimina i messaggi specificati.
Comando:
aws sqs delete-message-batch --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--entriesfile://delete-message-batch.jsonFile di input (delete-message-batch.json):
[ { "Id": "FirstMessage", "ReceiptHandle": "AQEB1mgl...Z4GuLw==" }, { "Id": "SecondMessage", "ReceiptHandle": "AQEBLsYM...VQubAA==" } ]Output:
{ "Successful": [ { "Id": "FirstMessage" }, { "Id": "SecondMessage" } ] }-
Per i dettagli sull'API, consulta AWS CLI Command DeleteMessageBatch
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-message.
- AWS CLI
-
Come eliminare un messaggio
Questo esempio elimina il messaggio specificato.
Comando:
aws sqs delete-message --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--receipt-handleAQEBRXTo...q2doVA==Output:
None.-
Per i dettagli sull'API, consulta DeleteMessage AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-queue.
- AWS CLI
-
Come eliminare una coda
Questo esempio elimina la coda specificata.
Comando:
aws sqs delete-queue --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewerQueueOutput:
None.-
Per i dettagli sull'API, consulta DeleteQueue AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareget-queue-attributes.
- AWS CLI
-
Come ottenere gli attributi di una coda
Questo esempio ottiene tutti gli attributi della coda specificata.
Comando:
aws sqs get-queue-attributes --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--attribute-namesAllOutput:
{ "Attributes": { "ApproximateNumberOfMessagesNotVisible": "0", "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":1000}", "MessageRetentionPeriod": "345600", "ApproximateNumberOfMessagesDelayed": "0", "MaximumMessageSize": "262144", "CreatedTimestamp": "1442426968", "ApproximateNumberOfMessages": "0", "ReceiveMessageWaitTimeSeconds": "0", "DelaySeconds": "0", "VisibilityTimeout": "30", "LastModifiedTimestamp": "1442426968", "QueueArn": "arn:aws:sqs:us-east-1:80398EXAMPLE:MyNewQueue" } }Questo esempio ottiene solo la dimensione massima dei messaggi e gli attributi di timeout della visibilità per la coda specificata.
Comando:
aws sqs get-queue-attributes --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue--attribute-namesMaximumMessageSizeVisibilityTimeoutOutput:
{ "Attributes": { "VisibilityTimeout": "30", "MaximumMessageSize": "262144" } }-
Per i dettagli sull'API, consulta GetQueueAttributes AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareget-queue-url.
- AWS CLI
-
Come ottenere l’URL di una coda
Questo esempio ottiene l’URL della coda specificata.
Comando:
aws sqs get-queue-url --queue-nameMyQueueOutput:
{ "QueueUrl": "https://queue.amazonaws.com/80398EXAMPLE/MyQueue" }-
Per i dettagli sull'API, consulta GetQueueUrl AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-dead-letter-source-queues.
- AWS CLI
-
Come elencare le code DLQ di origine
Questo esempio elenca le code associate alla coda DLQ di origine specificata.
Comando:
aws sqs list-dead-letter-source-queues --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyDeadLetterQueueOutput:
{ "queueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue" ] }-
Per i dettagli sull'API, consulta ListDeadLetterSourceQueues AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-message-move-tasks.
- AWS CLI
-
Come elencare le attività di spostamento dei messaggi
L’esempio
list-message-move-tasksseguente elenca le 2 attività di spostamento dei messaggi più recenti nella coda specificata.aws sqs list-message-move-tasks \ --source-arnarn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue\ --max-results2Output:
{ "Results": [ { "TaskHandle": "AQEB6nR4...HzlvZQ==", "Status": "RUNNING", "SourceArn": "arn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue1", "DestinationArn": "arn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue2", "MaxNumberOfMessagesPerSecond": 50, "ApproximateNumberOfMessagesMoved": 203, "ApproximateNumberOfMessagesToMove": 30, "StartedTimestamp": 1442428276921 }, { "Status": "COMPLETED", "SourceArn": "arn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue1", "DestinationArn": "arn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue2", "ApproximateNumberOfMessagesMoved": 29, "ApproximateNumberOfMessagesToMove": 0, "StartedTimestamp": 1342428272093 } ] }Per ulteriori informazioni consulta Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse nella Guida per gli sviluppatori.
-
Per i dettagli sull'API, consulta ListMessageMoveTasks AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-queue-tags.
- AWS CLI
-
Come elencare tutti i tag di allocazione dei costi per una coda
L’esempio
list-queue-tagsseguente visualizza tutti i tag di allocazione dei costi associati alla coda specificata.aws sqs list-queue-tags \ --queue-urlhttps://sqs.us-west-2.amazonaws.com/123456789012/MyQueueOutput:
{ "Tags": { "Team": "Alpha" } }Per ulteriori informazioni, consulta Elenco dei tag di allocazione dei costi nella Guida per sviluppatori di Amazon Simple Queue Service.
-
Per i dettagli sull'API, consulta ListQueueTags AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-queues.
- AWS CLI
-
Come elencare le code
Questo esempio elenca tutte le code.
Comando:
aws sqs list-queuesOutput:
{ "QueueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue", "https://queue.amazonaws.com/80398EXAMPLE/TestQueue1", "https://queue.amazonaws.com/80398EXAMPLE/TestQueue2" ] }Questo esempio elenca solo le code che iniziano con “My”.
Comando:
aws sqs list-queues --queue-name-prefixMyOutput:
{ "QueueUrls": [ "https://queue.amazonaws.com/80398EXAMPLE/MyDeadLetterQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyQueue", "https://queue.amazonaws.com/80398EXAMPLE/MyOtherQueue" ] }-
Per i dettagli sull'API, consulta ListQueues AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarepurge-queue.
- AWS CLI
-
Come rimuovere una coda
Questo esempio elimina tutti i messaggi nella coda specificata.
Comando:
aws sqs purge-queue --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueueOutput:
None.-
Per i dettagli sull'API, consulta PurgeQueue AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarereceive-message.
- AWS CLI
-
Come ricevere un messaggio
Questo esempio riceve fino a 10 messaggi disponibili e restituisce tutti gli attributi disponibili.
Comando:
aws sqs receive-message --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--attribute-namesAll--message-attribute-namesAll--max-number-of-messages10Output:
{ "Messages": [ { "Body": "My first message.", "ReceiptHandle": "AQEBzbVv...fqNzFw==", "MD5OfBody": "1000f835...a35411fa", "MD5OfMessageAttributes": "9424c491...26bc3ae7", "MessageId": "d6790f8d-d575-4f01-bc51-40122EXAMPLE", "Attributes": { "ApproximateFirstReceiveTimestamp": "1442428276921", "SenderId": "AIDAIAZKMSNQ7TEXAMPLE", "ApproximateReceiveCount": "5", "SentTimestamp": "1442428276921" }, "MessageAttributes": { "PostalCode": { "DataType": "String", "StringValue": "ABC123" }, "City": { "DataType": "String", "StringValue": "Any City" } } } ] }Questo esempio riceve il prossimo messaggio disponibile, restituendo solo gli SentTimestamp attributi SenderId and e l'attributo PostalCode message.
Comando:
aws sqs receive-message --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--attribute-namesSenderIdSentTimestamp--message-attribute-namesPostalCodeOutput:
{ "Messages": [ { "Body": "My first message.", "ReceiptHandle": "AQEB6nR4...HzlvZQ==", "MD5OfBody": "1000f835...a35411fa", "MD5OfMessageAttributes": "b8e89563...e088e74f", "MessageId": "d6790f8d-d575-4f01-bc51-40122EXAMPLE", "Attributes": { "SenderId": "AIDAIAZKMSNQ7TEXAMPLE", "SentTimestamp": "1442428276921" }, "MessageAttributes": { "PostalCode": { "DataType": "String", "StringValue": "ABC123" } } } ] }-
Per i dettagli sull'API, consulta ReceiveMessage AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareremove-permission.
- AWS CLI
-
Come rimuovere un’autorizzazione
Questo esempio rimuove l’autorizzazione con l’etichetta specificata dalla coda specificata.
Comando:
aws sqs remove-permission --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--labelSendMessagesFromMyQueueOutput:
None.-
Per i dettagli sull'API, consulta RemovePermission AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaresend-message-batch.
- AWS CLI
-
Come inviare più messaggi in batch
Questo esempio invia alla coda specificata 2 messaggi con il corpo del messaggio, il periodo di ritardo e gli attributi del messaggio specificati.
Comando:
aws sqs send-message-batch --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--entriesfile://send-message-batch.jsonFile di input (send-message-batch.json):
[ { "Id": "FuelReport-0001-2015-09-16T140731Z", "MessageBody": "Fuel report for account 0001 on 2015-09-16 at 02:07:31 PM.", "DelaySeconds": 10, "MessageAttributes": { "SellerName": { "DataType": "String", "StringValue": "Example Store" }, "City": { "DataType": "String", "StringValue": "Any City" }, "Region": { "DataType": "String", "StringValue": "WA" }, "PostalCode": { "DataType": "String", "StringValue": "99065" }, "PricePerGallon": { "DataType": "Number", "StringValue": "1.99" } } }, { "Id": "FuelReport-0002-2015-09-16T140930Z", "MessageBody": "Fuel report for account 0002 on 2015-09-16 at 02:09:30 PM.", "DelaySeconds": 10, "MessageAttributes": { "SellerName": { "DataType": "String", "StringValue": "Example Fuels" }, "City": { "DataType": "String", "StringValue": "North Town" }, "Region": { "DataType": "String", "StringValue": "WA" }, "PostalCode": { "DataType": "String", "StringValue": "99123" }, "PricePerGallon": { "DataType": "Number", "StringValue": "1.87" } } } ]Output:
{ "Successful": [ { "MD5OfMessageBody": "203c4a38...7943237e", "MD5OfMessageAttributes": "10809b55...baf283ef", "Id": "FuelReport-0001-2015-09-16T140731Z", "MessageId": "d175070c-d6b8-4101-861d-adeb3EXAMPLE" }, { "MD5OfMessageBody": "2cf0159a...c1980595", "MD5OfMessageAttributes": "55623928...ae354a25", "Id": "FuelReport-0002-2015-09-16T140930Z", "MessageId": "f9b7d55d-0570-413e-b9c5-a9264EXAMPLE" } ] }-
Per i dettagli sull'API, consulta AWS CLI Command SendMessageBatch
Reference.
-
Il seguente esempio di codice mostra come utilizzaresend-message.
- AWS CLI
-
Come inviare un messaggio
Questo esempio invia alla coda specificata un messaggio con il corpo del messaggio, il periodo di ritardo e gli attributi del messaggio specificato.
Comando:
aws sqs send-message --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyQueue--message-body"Information about the largest city in Any Region."--delay-seconds10--message-attributesfile://send-message.jsonFile di input (send-message.json):
{ "City": { "DataType": "String", "StringValue": "Any City" }, "Greeting": { "DataType": "Binary", "BinaryValue": "Hello, World!" }, "Population": { "DataType": "Number", "StringValue": "1250800" } }Output:
{ "MD5OfMessageBody": "51b0a325...39163aa0", "MD5OfMessageAttributes": "00484c68...59e48f06", "MessageId": "da68f62c-0c07-4bee-bf5f-7e856EXAMPLE" }-
Per i dettagli sull'API, consulta SendMessage AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareset-queue-attributes.
- AWS CLI
-
Come impostare gli attributi della coda
Questo esempio imposta la coda specificata su un ritardo di distribuzione di 10 secondi, una dimensione massima del messaggio di 128 KB (128 KB * 1.024 byte), un periodo di conservazione dei messaggi di 3 giorni (3 giorni * 24 ore * 60 minuti * 60 secondi), un tempo di attesa per la ricezione dei messaggi di 20 secondi e un timeout di visibilità predefinito di 60 secondi. Questo esempio associa inoltre la coda DLQ specificata a un numero massimo di ricezione di 1.000 messaggi.
Comando:
aws sqs set-queue-attributes --queue-urlhttps://sqs.us-east-1.amazonaws.com/80398EXAMPLE/MyNewQueue--attributesfile://set-queue-attributes.jsonFile di input (set-queue-attributes.json):
{ "DelaySeconds": "10", "MaximumMessageSize": "131072", "MessageRetentionPeriod": "259200", "ReceiveMessageWaitTimeSeconds": "20", "RedrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:80398EXAMPLE:MyDeadLetterQueue\",\"maxReceiveCount\":\"1000\"}", "VisibilityTimeout": "60" }Output:
None.-
Per i dettagli sull'API, consulta AWS CLI Command SetQueueAttributes
Reference.
-
Il seguente esempio di codice mostra come utilizzarestart-message-move-task.
- AWS CLI
-
Esempio 1: *come avviare un’attività di spostamento di messaggi*
L’esempio
start-message-move-taskseguente avvia un’operazione di spostamento dei messaggi per reindirizzare i messaggi dalla coda DLQ specificata alla coda di origine.aws sqs start-message-move-task \ --source-arnarn:aws:sqs:us-west-2:80398EXAMPLE:MyQueueOutput:
{ "TaskHandle": "AQEB6nR4...HzlvZQ==" }Per ulteriori informazioni, consulta il seguente argomento
in questa guida. Esempio 2: *come avviare un’attività di spostamento di messaggi con una frequenza massima*
L’esempio
start-message-move-taskseguente avvia un’attività di spostamento dei messaggi per reindirizzare i messaggi dalla coda DLQ specificata alla coda di destinazione specificata a una velocità massima di 50 messaggi al secondo.aws sqs start-message-move-task \ --source-arnarn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue1\ --destination-arnarn:aws:sqs:us-west-2:80398EXAMPLE:MyQueue2\ --max-number-of-messages-per-second50Output:
{ "TaskHandle": "AQEB6nR4...HzlvZQ==" }Per ulteriori informazioni consulta Autorizzazioni API Amazon SQS: riferimento a operazioni e risorse nella Guida per gli sviluppatori.
-
Per i dettagli sull'API, consulta StartMessageMoveTask AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaretag-queue.
- AWS CLI
-
Come aggiungere tag di allocazione dei costi a una coda
L’esempio
tag-queueseguente aggiunge un tag di allocazione dei costi alla coda Amazon SQS specificata.aws sqs tag-queue \ --queue-urlhttps://sqs.us-west-2.amazonaws.com/123456789012/MyQueue\ --tagsPriority=HighestQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Aggiunta di tag per l’allocazione dei costi nella Guida per gli sviluppatori di Amazon Simple Queue Service.
-
Per i dettagli sull'API, consulta TagQueue AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareuntag-queue.
- AWS CLI
-
Come rimuovere i tag di allocazione dei costi da una coda
L’esempio
untag-queueseguente rimuove un tag di allocazione dei costi dalla coda Amazon SQS specificata.aws sqs untag-queue \ --queue-urlhttps://sqs.us-west-2.amazonaws.com/123456789012/MyQueue\ --tag-keys"Priority"Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Aggiunta di tag per l’allocazione dei costi nella Guida per gli sviluppatori di Amazon Simple Queue Service.
-
Per i dettagli sull'API, consulta UntagQueue AWS CLI
Command Reference.
-