

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.

# Obtention d’informations sur le statut de la réplication
<a name="replication-status"></a>

Le statut de réplication peut vous aider à déterminer l’état actuel d’un objet répliqué. Le statut de réplication d’un objet source renvoie soit `PENDING`, `COMPLETED` ou `FAILED`. Le statut de réplication d’un réplica renvoie `REPLICA`.

Vous pouvez également utiliser les valeurs de statut de réplication lorsque vous créez des tâches de réplication par lot S3. Par exemple, vous pouvez utiliser ces valeurs de statut pour répliquer des objets qui n’ont jamais été répliqués ou dont la réplication a échoué. Pour plus d’informations sur l’utilisation de ces valeurs avec la réplication par lot, consultez [Utilisation des informations de statut de réplication avec les tâches de réplication par lot](#replication-status-batch-replication).

**Topics**
+ [Vue d’ensemble des statuts de réplication](#replication-status-overview)
+ [Statut de la réplication en cas de réplication vers plusieurs compartiments de destination](#replication-status-multiple-destinations)
+ [Statut de la réplication si la synchronisation des modifications de réplica Simple Storage Service (Amazon S3) est activée](#replication-status-replica-mod-syn)
+ [Utilisation des informations de statut de réplication avec les tâches de réplication par lot](#replication-status-batch-replication)
+ [Recherche du statut de réplication](#replication-status-usage)

## Vue d’ensemble des statuts de réplication
<a name="replication-status-overview"></a>

Dans le cadre de la réplication, vous disposez d’un compartiment source dans lequel vous configurez la réplication et d’un ou de plusieurs compartiments de destination dans lesquels Amazon S3 réplique les objets. Lorsque vous demandez un objet (à l’aide de `GetObject`) ou des métadonnées d’objet (à l’aide de `HeadObject`) à partir de ces compartiments, Amazon S3 renvoie l’en-tête `x-amz-replication-status` dans la réponse : 
+ Lorsque vous demandez un objet depuis le compartiment source, Amazon S3 renvoie l’en-tête `x-amz-replication-status` si l’objet demandé peut être répliqué. 

  Par exemple, imaginons que vous spécifiez le préfixe d’objet `TaxDocs` dans votre configuration de réplication pour indiquer à Amazon S3 de ne répliquer que les objets dotés du préfixe de nom de clé `TaxDocs`. Tous les objets que vous chargez ayant ce préfixe de nom de clé (par exemple, `TaxDocs/document1.pdf`) seront répliqués. Pour les demandes d’objet avec ce préfixe de nom de clé, Amazon S3 renvoie l’en-tête `x-amz-replication-status` avec l’une des valeurs suivantes pour le statut de réplication de l’objet : `PENDING`, `COMPLETED` ou `FAILED`.
**Note**  
Si la réplication d’objet échoue après avoir chargé un objet, vous ne pouvez pas relancer la réplication. Vous devez charger à nouveau l’objet ou utiliser la réplication par lot S3 pour répliquer tous les objets défaillants. S3 Lifecycle bloque les actions d'expiration et de transition sur les objets présentant un statut de `FAILED` réplication `PENDING` ou un état de réplication. Pour plus d’informations sur l’utilisation de la réplication par lot, consultez [Réplication d’objets existants via la réplication par lot](s3-batch-replication-batch.md).   
Les objets passent à un `FAILED` état pour des problèmes tels que l'absence d'autorisations de rôle de réplication, d'autorisations AWS Key Management Service (AWS KMS) ou d'autorisations de compartiment. Pour les échecs temporaires, par exemple si un compartiment ou une région n’est pas disponible, le statut de réplication ne passe pas à `FAILED`, mais reste `PENDING`. Une fois la ressource remise en ligne, Amazon S3 reprend la réplication de ces objets.
+ Lorsque vous demandez un objet à partir du compartiment de destination, si l’objet demandé est un réplica créé par Amazon S3, Amazon S3 renvoie l’en-tête `x-amz-replication-status` avec la valeur `REPLICA`.

**Note**  
Avant de supprimer un objet d’un compartiment source pour lequel la réplication a été activée, contrôlez le statut de réplication de l’objet pour vous assurer qu’il a été répliqué.   
Si une configuration S3 Lifecycle est activée sur le compartiment source, Amazon S3 suspend les actions relatives au cycle de vie jusqu'à ce qu'il marque l'état de réplication de l'objet comme étant`COMPLETED`. Si l'état de réplication est défini`FAILED`, S3 Lifecycle continue de bloquer les actions d'expiration et de transition sur l'objet jusqu'à ce que vous résolviez le problème de réplication sous-jacent. Pour de plus amples informations, veuillez consulter [S3 Lifecycle et](lifecycle-and-other-bucket-config.md#lifecycle-and-replication).

## Statut de la réplication en cas de réplication vers plusieurs compartiments de destination
<a name="replication-status-multiple-destinations"></a>

Lorsque vous répliquez des objets vers plusieurs compartiments de destination, l’en-tête `x-amz-replication-status` agit différemment. L’en-tête de l’objet source renvoie la valeur `COMPLETED` seulement quand la réplication a réussi vers toutes les destinations. L’en-tête reste à la valeur `PENDING` jusqu’à ce que la réplication soit terminée pour toutes les destinations. Si la réplication échoue vers une ou plusieurs destinations, l’en-tête renvoie `FAILED`.

## Statut de la réplication si la synchronisation des modifications de réplica Simple Storage Service (Amazon S3) est activée
<a name="replication-status-replica-mod-syn"></a>

Lorsque vos règles de réplication activent la synchronisation des modifications de réplica Simple Storage Service (Amazon S3), les statuts des réplicas peuvent être différents de `REPLICA`. Si des modifications de métadonnées sont en cours de réplication, l’en-tête `x-amz-replication-status` renvoie `PENDING`. Si la synchronisation des modifications du réplica ne parvient pas à répliquer les métadonnées, l’en-tête renvoie `FAILED`. Si les métadonnées sont répliquées correctement, les réplicas retournent l’en-tête `REPLICA`.

## Utilisation des informations de statut de réplication avec les tâches de réplication par lot
<a name="replication-status-batch-replication"></a>

Lors de la création d’une tâche de réplication par lot, vous pouvez éventuellement spécifier des filtres supplémentaires, tels que la date de création d’objet et le statut de réplication, afin de réduire la portée de la tâche.

Vous pouvez filtrer les objets à répliquer sur la base de la valeur `ObjectReplicationStatuses`, en fournissant une ou plusieurs des valeurs suivantes :
+ `"NONE"` – Indique qu’Amazon S3 n’a jamais tenté de répliquer l’objet auparavant.
+ `"FAILED"` – Indique qu’Amazon S3 a déjà tenté mais n’a pas réussi à répliquer l’objet.
+ `"COMPLETED"` : indique qu’Amazon S3 a déjà répliqué l’objet avec succès.
+ `"REPLICA"` – Indique qu’il s’agit d’un objet de réplica répliqué par Amazon S3 à partir d’une autre source.

Pour plus d’informations sur l’utilisation de ces valeurs de statut de réplication avec la réplication par lot, consultez [Filtres pour une tâche de réplication par lot](s3-batch-replication-batch.md#batch-replication-filters).

## Recherche du statut de réplication
<a name="replication-status-usage"></a>

Pour obtenir le statut de réplication des objets dans un compartiment, utilisez l’outil d’inventaire Amazon S3. Amazon S3 envoie un fichier CSV au compartiment de destination que vous spécifiez dans la configuration d’inventaire. Vous pouvez également utiliser Amazon Athena pour interroger le statut de réplication dans le rapport d’inventaire. Pour plus d’informations sur l’inventaire Amazon S3, consultez [Catalogage et analyse de vos données avec S3 Inventory](storage-inventory.md).

Vous pouvez également connaître l'état de réplication de l'objet à l'aide de la console Amazon S3, du AWS Command Line Interface (AWS CLI) ou du AWS SDK. 

### Utilisation de la console S3
<a name="replication-status-console"></a>

Dans la console Amazon S3, vous pouvez afficher le statut de réplication d’un objet sur la page des détails de l’objet.

1. Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Dans le panneau de navigation de gauche, choisissez **Compartiments**.

1. Dans la liste **Compartiments à usage général**, choisissez le nom du compartiment source de réplication.

1. Dans la liste **Objets**, sélectionnez le nom de l’objet. La page de détails de l’objet s’affiche. 

1. Dans l’onglet **Propriétés**, faites défiler l’affichage vers le bas jusqu’à la section **Présentation de la gestion des objets**. Sous **Configurations de gestion**, lisez la valeur sous **Statut de réplication**.

### À l'aide du AWS CLI
<a name="replication-status-cli"></a>

Utilisez la `head-object` commande AWS Command Line Interface (AWS CLI) pour récupérer les métadonnées de l'objet, comme indiqué dans l'exemple suivant. Remplacez le `amzn-s3-demo-source-bucket1` par le nom de votre compartiment source de réplication et remplacez les autres `user input placeholders` par vos propres informations.

```
aws s3api head-object --bucket amzn-s3-demo-source-bucket1 --key object-key --version-id object-version-id           
```

La commande renvoie les métadonnées de l’objet, y compris `ReplicationStatus` comme illustré dans l’exemple de réponse suivant.

```
{
   "AcceptRanges":"bytes",
   "ContentType":"image/jpeg",
   "LastModified":"Mon, 23 Mar 2015 21:02:29 GMT",
   "ContentLength":3191,
   "ReplicationStatus":"COMPLETED",
   "VersionId":"jfnW.HIMOfYiD_9rGbSkmroXsFj3fqZ.",
   "ETag":"\"6805f2cfc46c0f04559748bb039d69ae\"",
   "Metadata":{

   }
}
```

### À l'aide du AWS SDKs
<a name="replication-status-sdk"></a>

Les fragments de code suivants obtiennent l'état de votre réplication à l'aide des AWS SDK pour Java touches et AWS SDK pour .NET, respectivement. 

------
#### [ Java ]

```
GetObjectMetadataRequest metadataRequest = new GetObjectMetadataRequest(bucketName, key);
ObjectMetadata metadata = s3Client.getObjectMetadata(metadataRequest);

System.out.println("Replication Status : " + metadata.getRawMetadataValue(Headers.OBJECT_REPLICATION_STATUS));
```

------
#### [ .NET ]

```
GetObjectMetadataRequest getmetadataRequest = new GetObjectMetadataRequest
    {
         BucketName = sourceBucket,
         Key        = objectKey
    };

GetObjectMetadataResponse getmetadataResponse = client.GetObjectMetadata(getmetadataRequest);
Console.WriteLine("Object replication status: {0}", getmetadataResponse.ReplicationStatus);
```

------