

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.

# Surveillance des transferts de données avec Amazon CloudWatch Logs
<a name="configure-logging"></a>

Vous pouvez surveiller votre AWS DataSync transfert à l'aide CloudWatch des journaux. Nous vous recommandons de configurer votre tâche de manière à consigner au moins les informations de base (telles que les erreurs de transfert).

## DataSync Autoriser le téléchargement de journaux dans un groupe de CloudWatch journaux
<a name="cloudwatchlogs"></a>

Pour [configurer la journalisation](#configure-logging-for-task) de votre DataSync tâche, vous avez besoin d'un groupe de CloudWatch journaux autorisé à envoyer des journaux. DataSync Vous configurez cet accès via un rôle Gestion des identités et des accès AWS (IAM). La manière dont cela fonctionne spécifiquement dépend de votre [mode de tâche](choosing-task-mode.md).

------
#### [ Enhanced mode ]

Avec le mode amélioré, envoie DataSync automatiquement les journaux des tâches à un groupe de journaux nommé`/aws/datasync`. Si ce groupe de journaux n'existe pas dans votre compte Région AWS, DataSync crée le groupe de journaux en votre nom en utilisant un [rôle lié à un service](https://docs.aws.amazon.com/datasync/latest/userguide/using-service-linked-roles-service-action-2.html) IAM lorsque vous créez votre tâche. 

------
#### [ Basic mode ]

Le mode de base permet de configurer un groupe de CloudWatch journaux pour une DataSync tâche de plusieurs manières. Dans la console, vous pouvez créer automatiquement un rôle IAM qui inclut dans la plupart des cas les autorisations nécessaires pour DataSync télécharger des journaux. N'oubliez pas que ce rôle généré automatiquement peut ne pas répondre à vos besoins du point de vue du moindre privilège.

Si vous souhaitez utiliser un groupe de CloudWatch journaux existant ou si vous créez vos tâches par programmation, vous devez créer vous-même le rôle IAM. 

L'exemple suivant est une politique IAM qui accorde ces autorisations.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DataSyncLogsToCloudWatchLogs",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents",
                "logs:CreateLogStream"
            ],
            "Principal": {
                "Service": "datasync.amazonaws.com"
            },
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": [
                    "arn:aws:datasync:us-east-1:444455556666:task/*"
                    ]
                },
                "StringEquals": {
                "aws:SourceAccount": "444455556666"
                }
            },
            "Resource": "arn:aws:logs:us-east-1:444455556666:log-group:*:*"
        }
    ]
}
```

La politique utilise `Condition` des instructions pour garantir que seules DataSync les tâches du compte spécifié ont accès au groupe de CloudWatch journaux spécifié. Nous recommandons d'utiliser les clés de contexte [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)et de condition [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)globale dans ces `Condition` instructions pour éviter le problème de confusion des adjoints. Pour de plus amples informations, veuillez consulter [Prévention du problème de l’adjoint confus entre services](cross-service-confused-deputy-prevention.md).

Pour spécifier la DataSync ou les tâches, *`region`* remplacez-les par le code de région correspondant à l' Région AWS emplacement des tâches (par exemple,`us-west-2`) et remplacez-le par *`account-id`* l' Compte AWS ID du compte contenant les tâches. Pour spécifier le groupe de CloudWatch journaux, remplacez les mêmes valeurs. Vous pouvez également modifier l'`Resource`instruction pour cibler des groupes de journaux spécifiques. Pour plus d'informations sur l'utilisation de `SourceArn` et`SourceAccount`, consultez la section [Clés de condition globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) dans le *guide de l'utilisateur IAM*.

Pour appliquer la stratégie, enregistrez cette instruction de stratégie dans un fichier sur votre ordinateur local. Exécutez ensuite la AWS CLI commande suivante pour appliquer la politique de ressources. Pour utiliser cet exemple de commande, `full-path-to-policy-file` remplacez-le par le chemin du fichier contenant votre déclaration de politique.

```
aws logs put-resource-policy --policy-name trust-datasync --policy-document file://full-path-to-policy-file
```

**Note**  
Exécutez cette commande en utilisant la même commande Compte AWS et en utilisant l' Région AWS endroit où vous avez activé votre DataSync agent.

Pour plus d'informations, consultez le [https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html).

------

## Configuration de la journalisation pour votre DataSync tâche
<a name="configure-logging-for-task"></a>

Nous vous recommandons de configurer au moins un certain niveau de journalisation pour votre DataSync tâche.

**Avant de commencer**  
DataSync nécessite une autorisation pour télécharger des journaux dans un groupe de CloudWatch journaux. Pour de plus amples informations, veuillez consulter [DataSync Autoriser le téléchargement de journaux dans un groupe de CloudWatch journaux](#cloudwatchlogs).

### Utilisation de la DataSync console
<a name="configure-logging-steps-console"></a>

Les instructions suivantes décrivent comment configurer la CloudWatch journalisation lors de la création d'une tâche. Vous pouvez également configurer la journalisation lorsque vous modifiez une tâche.

1. Ouvrez la AWS DataSync console à l'adresse [https://console.aws.amazon.com/datasync/](https://console.aws.amazon.com/datasync/).

1. Dans le volet de navigation de gauche, développez **Transfert de données**, puis choisissez **Tâches**, puis choisissez **Créer une tâche**.

1. Configurez les emplacements source et de destination de votre tâche.

   Pour de plus amples informations, consultez [Où puis-je transférer mes données AWS DataSync ?](working-with-locations.md).

1. Sur la page **Configurer les paramètres**, choisissez un [mode de tâche](choosing-task-mode.md) et toute autre option.

   Certaines des options suivantes pourraient vous intéresser :
   + Spécifiez les données à transférer à l'aide d'un [manifeste](transferring-with-manifest.md) ou de [filtres](filtering.md).
   + Configurez le mode de [gestion des métadonnées des fichiers](configure-metadata.md) et de [vérification de l'intégrité des données](configure-data-verification-options.md).

1. Pour le **niveau du journal**, choisissez l'une des options suivantes :
   + **Enregistrez les informations de base telles que les erreurs de transfert** : publiez des journaux contenant uniquement des informations de base (telles que les erreurs de transfert).
   + **Enregistrez tous les objets et fichiers transférés** : publiez des journaux pour tous les fichiers ou objets qui DataSync transfèrent et effectuent des contrôles d'intégrité des données.
   + **Ne générez pas de journaux**

1. Procédez de l'une des manières suivantes en fonction du mode de tâche que vous utilisez pour créer ou spécifier un groupe de CloudWatch journaux : 

------
#### [ Enhanced mode ]

   Lorsque vous choisissez **Créer une tâche**, utilise (ou crée) DataSync automatiquement un groupe de journaux nommé`/aws/datasync`.

------
#### [ Basic mode ]

   Pour le **groupe de CloudWatch journaux**, spécifiez un groupe de journaux autorisé à télécharger des journaux en effectuant l'une des opérations suivantes : DataSync 
   + Choisissez **Autogenerate** pour créer automatiquement un groupe de journaux qui permet DataSync d'y télécharger des journaux.
   + Choisissez un groupe de journaux existant dans votre groupe actuel Région AWS.

     Si vous choisissez un groupe de journaux existant, assurez-vous qu'il [DataSync est autorisé](#cloudwatchlogs) à télécharger des journaux dans ce groupe de journaux.

------

1. Choisissez **Créer tâche**.

Vous êtes prêt à [commencer votre tâche](run-task.md).

### En utilisant le AWS CLI
<a name="configure-logging-steps-cli"></a>

1. Copiez la `create-task` commande suivante :

   ```
   aws datasync create-task \
     --source-location-arn "arn:aws:datasync:us-east-1:account-id:location/location-id" \
     --destination-location-arn "arn:aws:datasync:us-east-1:account-id:location/location-id" \
     --task-mode "ENHANCED-or-BASIC" \
     --name "task-name" \
     --options '{"LogLevel": "log-level"}' \
     --cloudwatch-log-group-arn "arn:aws:logs:us-east-1:account-id:log-group:log-group-name:*"
   ```

1. Pour`--source-location-arn`, spécifiez l'Amazon Resource Name (ARN) de votre emplacement source.

1. Pour`--destination-location-arn`, spécifiez l'ARN de votre position de destination.

   Si vous transférez plusieurs Régions AWS comptes, assurez-vous que l'ARN inclut l'autre région ou l'autre identifiant de compte.

1. Pour`--task-mode`, spécifiez `ENHANCED` ou`BASIC`.

1. (Recommandé) Pour`--name`, spécifiez un nom mémorisable pour votre tâche.

1. Pour`LogLevel`, spécifiez l'une des options suivantes :
   + `BASIC`— Publiez des journaux contenant uniquement des informations de base (telles que les erreurs de transfert).
   + `TRANSFER`— Publiez des journaux pour tous les fichiers ou objets qui DataSync transfèrent et vérifient l'intégrité des données.
   + `NONE`— Ne générez pas de journaux.

1. Pour -`-cloudwatch-log-group-arn`, spécifiez l'ARN d'un groupe de CloudWatch journaux.
**Important**  
Si `--task-mode` c'est le cas`ENHANCED`, il n'est pas nécessaire de spécifier cette option. Pour de plus amples informations, veuillez consulter [DataSync Autoriser le téléchargement de journaux dans un groupe de CloudWatch journaux](#cloudwatchlogs).

1. Exécutez la commande `create-task`.

   Si la commande aboutit, vous obtenez une réponse indiquant l'ARN de la tâche que vous avez créée. Par exemple :

   ```
   { 
       "TaskArn": "arn:aws:datasync:us-east-1:111222333444:task/task-08de6e6697796f026" 
   }
   ```

Vous êtes prêt à [commencer votre tâche](run-task.md).

### Utilisation de l' DataSync API
<a name="configure-logging-steps-api"></a>

Vous pouvez configurer la CloudWatch journalisation de votre tâche en utilisant le `CloudWatchLogGroupArn` paramètre avec l'une des opérations suivantes :
+ [https://docs.aws.amazon.com/datasync/latest/userguide/API_CreateTask.html](https://docs.aws.amazon.com/datasync/latest/userguide/API_CreateTask.html)
+ [https://docs.aws.amazon.com/datasync/latest/userguide/API_UpdateTask.html](https://docs.aws.amazon.com/datasync/latest/userguide/API_UpdateTask.html)

## Afficher les journaux des DataSync tâches
<a name="monitoring-verification-errors-cloudwatch"></a>

Lorsque vous [démarrez votre tâche](run-task.md), vous pouvez consulter les journaux d'exécution de la tâche à l'aide de la CloudWatch console ou AWS CLI (entre autres options). Pour plus d'informations, consultez le [https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html). 

DataSync fournit des journaux structurés en JSON pour les tâches en mode amélioré. Les tâches en mode de base ont des journaux non structurés. Les exemples suivants montrent comment les erreurs de vérification s'affichent dans les journaux en mode amélioré par rapport aux journaux en mode de base.

------
#### [ Enhanced mode log example ]

```
{
    "Action": "VERIFY",
    "Source": {
        "LocationId": "loc-abcdef01234567890",
        "RelativePath": "directory1/directory2/file1.txt"
    },
    "Destination": {
        "LocationId": "loc-05ab2fdc272204a5f",
        "RelativePath": "directory1/directory2/file1.txt",
        "Metadata": {
            "Type": "Object",
            "ContentSize": 66060288,
            "LastModified": "2024-10-03T20:46:58Z",
            "S3": {
                "SystemMetadata": {
                    "ContentType": "binary/octet-stream",
                    "ETag": "\"1234abcd5678efgh9012ijkl3456mnop\"",
                    "ServerSideEncryption": "AES256"
                },
                "UserMetadata": {
                    "file-mtime": "1602647222/222919600"
                },
                "Tags": {}
            }
        }
    },
    "ErrorCode": "FileNotAtSource",
    "ErrorDetail": "Verification failed due to file being present at the destination but not at the source"
}
```

------
#### [ Basic mode log example ]

```
[NOTICE] Verification failed > /directory1/directory2/file1.txt
[NOTICE] /directory1/directory2/file1.txt   dstMeta: type=R mode=0755 uid=65534 gid=65534 size=8972938 atime=1728657659/0 mtime=1728657659/0 extAttrsHash=0
[NOTICE]   dstHash: f9c2cca900301d38b0930367d8d587153154af467da0fdcf1bebc0848ec72c0d
```

------