

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation de files d'attente contenant des lettres mortes dans Amazon SQS avec la version 3 AWS SDK pour PHP
<a name="sqs-examples-dead-letter-queues"></a>

Une file d'attente de lettres mortes peut être ciblée par d'autres files d'attente (source) pour les messages ne pouvant pas être traités avec succès. Vous pouvez mettre de côté et isoler ces messages dans la file d’attente de lettres mortes pour déterminer pourquoi leur traitement a échoué. Vous devez configurer individuellement chaque file d’attente source qui envoie des messages à une file d’attente de lettres mortes. Plusieurs files d'attente peuvent cibler une seule file d'attente de lettres mortes.

Pour en savoir plus, consultez la section [Utilisation des files d’attente de lettres mortes SQS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html).

L’exemple suivant indique comment :
+ Activez une file d'attente de lettres mortes à l'aide de. [SetQueueAttributes](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-sqs-2012-11-05.html#setqueueattributes)

Tous les exemples de code pour le AWS SDK pour PHP sont [disponibles ici GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php/example_code).

## Informations d’identification
<a name="examplecredentials"></a>

Avant d'exécuter l'exemple de code, configurez vos AWS informations d'identification, comme décrit dans[Authentification à l' AWS aide de AWS SDK pour PHP la version 3](credentials.md). Importez ensuite le AWS SDK pour PHP, comme décrit dans[Installation de la AWS SDK pour PHP version 3](getting-started_installation.md).

## Activer une file d'attente de lettres mortes
<a name="enable-a-dead-letter-queue"></a>

 **Importations** 

```
require 'vendor/autoload.php';

use Aws\Exception\AwsException;
use Aws\Sqs\SqsClient;
```

 **Exemple de code** 

```
$queueUrl = "QUEUE_URL";

$client = new SqsClient([
    'profile' => 'default',
    'region' => 'us-west-2',
    'version' => '2012-11-05'
]);

try {
    $result = $client->setQueueAttributes([
        'Attributes' => [
            'RedrivePolicy' => "{\"deadLetterTargetArn\":\"DEAD_LETTER_QUEUE_ARN\",\"maxReceiveCount\":\"10\"}"
        ],
        'QueueUrl' => $queueUrl // REQUIRED
    ]);
    var_dump($result);
} catch (AwsException $e) {
    // output error message if fails
    error_log($e->getMessage());
}
```