

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 de la livraison des données
<a name="data-delivery-monitoring"></a>

 Consultez cette rubrique pour savoir comment surveiller votre livraison à l'aide CloudWatch des métriques, des CloudWatch journaux et des statistiques Amazon AWS CloudTrail. 

## CloudWatch métriques
<a name="data-delivery-monitoring-metrics"></a>

 Chaque diffusion publie des métriques CloudWatch dans l'espace de `AWS/Kinesis` noms. Les noms des métriques sont préfixés par type de destination : `DeliveryToS3` pour les livraisons Amazon S3 à usage général et `DeliveryToIceberg` pour les livraisons par table de streaming. Utilisez ces indicateurs pour suivre l'état et les performances de votre livraison. 


**Statistiques de diffusion Amazon S3 (DeliveryToS3)**  

| Nom de la métrique | Unité | Description | 
| --- | --- | --- | 
| DeliveryToS3.DataFreshness | Secondes | L'âge du plus vieux disque non encore livré à destination. La hausse des valeurs indique que la livraison est en retard. | 
| DeliveryToS3.BytesIn | Octets | Le volume de données lues dans le chemin de diffusion à partir du flux. | 
| DeliveryToS3.BytesProcessed | Octets | Le volume de données traitées par la livraison. | 
| DeliveryToS3.BytesOut | Octets | Le volume de données écrites vers la destination. | 
| DeliveryToS3.RecordCount | Nombre | Le nombre total d'enregistrements lus à partir du flux. | 
| DeliveryToS3.SuccessfulRecordCount | Nombre | Le nombre d'enregistrements livrés avec succès à la destination. | 
| DeliveryToS3.FailedRecordCount | Nombre | Le nombre d'enregistrements dont la livraison a échoué. Une valeur non nulle est le principal signal d'erreur. | 
| DeliveryToS3.DeliverySuccess | Nombre | Le nombre d'opérations de livraison réussies. | 
| DeliveryToS3.DLQDeliverySuccess | Nombre | Le nombre d'enregistrements écrits avec succès dans la file d'attente de lettres mortes. | 


**Métriques de diffusion des tables de diffusion (DeliveryToIceberg)**  

| Nom de la métrique | Unité | Description | 
| --- | --- | --- | 
| DeliveryToIceberg.DataFreshness | Secondes | L'âge du plus vieux disque n'a pas encore été enregistré. La hausse des valeurs indique que la livraison est en retard. | 
| DeliveryToIceberg.BytesIn | Octets | Le volume de données lues dans le chemin de diffusion à partir du flux. | 
| DeliveryToIceberg.BytesProcessed | Octets | Le volume de données traitées par la livraison. | 
| DeliveryToIceberg.BytesOut | Octets | Le volume de données écrites dans la table. | 
| DeliveryToIceberg.TotalRowCount | Nombre | Le nombre total de lignes lues depuis le flux. | 
| DeliveryToIceberg.SuccessfulRowCount | Nombre | Le nombre de lignes transmises avec succès à la table. | 
| DeliveryToIceberg.FailedRowCount | Nombre | Le nombre de lignes dont la livraison a échoué. Une valeur non nulle est le principal signal d'erreur. | 
| DeliveryToIceberg.CommitSuccess | Nombre | Le nombre de commits Iceberg réussis. | 
| DeliveryToIceberg.DLQDeliverySuccess | Nombre | Le nombre d'enregistrements écrits avec succès dans la file d'attente de lettres mortes. | 

### Dimensions
<a name="data-delivery-monitoring-dimensions"></a>

 Les statistiques de livraison sont publiées avec les dimensions suivantes : 
+ `ChannelName`— Le nom de livraison.
+ `ChannelId`— L'identifiant unique de la livraison.
+ `StreamName`— Nom du flux Kinesis Data Streams source.

**Note**  
 Pour cibler une livraison spécifique dans une CloudWatch alarme, spécifiez les trois dimensions. Pour naviguer ou effectuer des requêtes avec `GetMetricData` et`ListMetrics`, vous pouvez filtrer en fonction d'un sous-ensemble de dimensions, par exemple seul. `ChannelName` 

### Alarmes recommandées
<a name="data-delivery-monitoring-alarms"></a>


**CloudWatch Alarmes recommandées pour les livraisons**  

| alerte | Métrique | Condition | Description | 
| --- | --- | --- | --- | 
| Taux d'échec élevé | DeliveryToS3.FailedRecordCount | > 0 pendant 5 minutes | Les dossiers ne sont pas livrés. Examinez les incohérences de schéma ou les problèmes de destination. | 
| Dégradation de l'actualisation | DeliveryToS3.DataFreshness | > seuil | La diffusion des données est à la traîne. Examinez les problèmes de distribution, tels que l'absence d'autorisations sur le rôle d'exécution du service ou la limitation du rôle de destination. | 
| Aucune donnée transmise | DeliveryToS3.SuccessfulRecordCount | = 0 pendant 15 minutes | Aucun dossier n'a été livré. Vérifiez que le flux contient des données et que la diffusion est active. | 
| Défaillances de livraison DLQ | DeliveryToS3.DLQDeliverySuccess | = 0 lorsque FailedRecordCount > 0 | Les enregistrements ayant échoué ne peuvent pas être écrits dans la file d'attente de lettres mortes. Vérifiez les autorisations du compartiment DLQ. | 

**Note**  
 Les alarmes précédentes utilisent les `DeliveryToS3` métriques d'une livraison Amazon S3. Pour la diffusion d'une table de streaming, utilisez les `DeliveryToIceberg` métriques équivalentes (`DeliveryToIceberg.FailedRowCount``DeliveryToIceberg.DataFreshness`,`DeliveryToIceberg.SuccessfulRowCount`, et`DeliveryToIceberg.DLQDeliverySuccess`). 

## CloudWatch Journaux
<a name="data-delivery-monitoring-logs"></a>

 Chaque livraison peut publier des journaux détaillés dans Logs à CloudWatch des fins de débogage et de visibilité opérationnelle. 
+ **Groupe de journaux par défaut ** — `/aws/kinesis/{{channelName}}/{{channelId}}`
+ **Journal du flux ** — `DestinationDelivery`

### Activation CloudWatch des journaux via la CLI
<a name="data-delivery-monitoring-logs-enable"></a>

 Activez CloudWatch les journaux lors de la création ou de la mise à jour d'une diffusion à l'aide de AWS CLI : 

```
aws kinesis create-channel \
    --channel-name "my-channel" \
    --service-execution-role-arn "arn:aws:iam::123456789012:role/my-channel-role" \
    --stream-configuration-list '[
        {
            "StreamARN": "arn:aws:kinesis:us-east-1:123456789012:stream/my-stream",
            "RecordConfiguration": { "RecordFormatType": "JSON" }
        }
    ]' \
    --s3-destination-configuration '{
        "StorageConfiguration": {
            "BucketARN": "arn:aws:s3:::my-destination-bucket",
            "ExpectedBucketOwner": "123456789012",
            "CompressionType": "GZIP"
        }
    }' \
    --logging-configuration '{
        "CloudWatchLogs": {
            "Enabled": true
        }
    }'
```

 Lorsque vous activez CloudWatch les journaux sans spécifier de groupe de journaux, la diffusion utilise le groupe de journaux par défaut`/aws/kinesis/{{channelName}}/{{channelId}}`. Si vous spécifiez une option personnalisée`LogGroupName`, assurez-vous que les autorisations de CloudWatch journalisation du rôle d'exécution du service sont limitées à ce même groupe de journaux. Pour les autorisations requises, consultez [Autorisations IAM pour la fourniture de données](data-delivery-iam.md). 

 Vous pouvez également activer ou mettre à jour CloudWatch les journaux d'une livraison existante à l'aide de la `update-channel` commande, en transmettant la même `--logging-configuration` valeur. 

### Autorisations requises
<a name="data-delivery-monitoring-logs-permissions"></a>

 Pour activer CloudWatch les journaux, le rôle d'exécution du service de livraison doit disposer des autorisations suivantes : 
+ `logs:CreateLogGroup`
+ `logs:CreateLogStream`
+ `logs:PutLogEvents`

 Étendez ces autorisations à l'ARN du groupe de journaux spécifique. Consultez l'[Autorisations facultatives pour les CloudWatch journaux](data-delivery-iam.md#data-delivery-iam-cloudwatch-logs)exemple de politique complet. 

## AWS CloudTrail journalisation
<a name="data-delivery-monitoring-cloudtrail"></a>

 Tous les appels d'API de livraison sont enregistrés par AWS CloudTrail. Voici un exemple d' AWS CloudTrail événement pour un `CreateChannel` appel : 

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROA1EXAMPLE:user-session",
        "arn": "arn:aws:sts::<account-id>:assumed-role/<role-name>/user-session",
        "accountId": "<account-id>"
    },
    "eventTime": "2026-07-20T20:00:00Z",
    "eventSource": "kinesis.amazonaws.com",
    "eventName": "CreateChannel",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "192.0.2.1",
    "userAgent": "aws-cli/2.x",
    "requestParameters": {
        "streamName": "my-stream",
        "channelName": "my-channel"
    },
    "responseElements": {
        "channelARN": "arn:aws:kinesis:us-east-1:<account-id>:channel/<channel-id>"
    },
    "requestID": "a1b2c3d4-example",
    "eventID": "e5f6g7h8-example",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "recipientAccountId": "<account-id>"
}
```