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
Utilisez cette rubrique pour savoir comment surveiller votre livraison à l'aide CloudWatch des métriques, des CloudWatch journaux et des journaux Amazon AWS CloudTrail.
CloudWatch métriques
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 de tables de streaming. Utilisez ces indicateurs pour surveiller l'état et les performances de votre livraison.
Le tableau suivant répertorie les métriques relatives aux livraisons Amazon S3 à usage général (DeliveryToS3).
| Nom de la métrique | Unité | Description |
|---|---|---|
DeliveryToS3.DataFreshness |
Secondes | L'âge du disque le plus ancien qui n'a pas encore été livré à destination. La hausse des valeurs indique que les livraisons sont en retard. |
DeliveryToS3.BytesIn |
Octets | 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 | Volume de données écrites vers la destination. |
DeliveryToS3.RecordCount |
Nombre | Le nombre total d'enregistrements lus depuis le 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 différente de zéro 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 des lettres mortes. |
Le tableau suivant répertorie les mesures relatives aux livraisons de tables de streaming (DeliveryToIceberg).
| Nom de la métrique | Unité | Description |
|---|---|---|
DeliveryToIceberg.DataFreshness |
Secondes | Âge de l'enregistrement le plus ancien qui n'a pas encore été livré sur la table. La hausse des valeurs indique que les livraisons sont en retard. |
DeliveryToIceberg.BytesIn |
Octets | 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 | Volume de données écrites dans la table. |
DeliveryToIceberg.TotalRowCount |
Nombre | Nombre total de lignes lues depuis le flux. |
DeliveryToIceberg.SuccessfulRowCount |
Nombre | Le nombre de lignes envoyées avec succès à la table. |
DeliveryToIceberg.FailedRowCount |
Nombre | Nombre de lignes dont la livraison a échoué. Une valeur différente de zéro 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 des lettres mortes. |
Dimensions
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 etListMetrics, vous pouvez filtrer en fonction d'un sous-ensemble de dimensions, par exemple « alone ». ChannelName
Alarmes recommandées
Le tableau suivant répertorie les 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. Étudiez les incohérences entre les schémas ou les problèmes de destination. |
| Dégradation de fraîcheur des données | DeliveryToS3.DataFreshness |
> seuil | La fourniture de données prend du retard. Étudiez les problèmes de livraison tels que l'absence d'autorisations sur le rôle d'exécution du service ou le ralentissement à la destination. |
| Aucune donnée fournie | DeliveryToS3.SuccessfulRecordCount |
= 0 pendant 15 minutes | Aucun enregistrement 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 des lettres mortes. Vérifiez les autorisations du bucket 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.FailedRowCountDeliveryToIceberg.DataFreshnessDeliveryToIceberg.SuccessfulRowCount,, etDeliveryToIceberg.DLQDeliverySuccess).
CloudWatch Journaux
Chaque livraison peut publier des journaux détaillés dans Logs à CloudWatch des fins de débogage et de visibilité opérationnelle.
Par défaut, une diffusion écrit dans le groupe de journaux et le flux de journaux suivants :
-
Groupe de journaux par défaut —
/aws/kinesis/channelName/channelId -
Stream de journal —
DestinationDelivery
Activation CloudWatch des journaux via CLI
Activez CloudWatch les journaux lors de la création ou de la mise à jour d'une livraison à l'aide de AWS CLI :
aws kinesis create-channel \ --channel-name "my-channel" \ --service-execution-role-arn "arn:aws:iam::111122223333:role/my-channel-role" \ --stream-configuration-list '[ { "StreamARN": "arn:aws:kinesis:us-east-1:111122223333:stream/my-stream", "RecordConfiguration": { "RecordFormatType": "JSON" } } ]' \ --s3-destination-configuration '{ "StorageConfiguration": { "BucketARN": "arn:aws:s3:::amzn-s3-demo-destination-bucket", "ExpectedBucketOwner": "111122223333", "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/. Si vous spécifiez une option personnaliséechannelName/channelIdLogGroupName, assurez-vous que les autorisations de CloudWatch journalisation du rôle d'exécution du service sont étendues à ce même groupe de journaux. Pour les autorisations requises, consultez Autorisations IAM pour la livraison de données.
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
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. Voir l'Autorisations facultatives pour les CloudWatch journauxexemple de politique complet.
AWS CloudTrail journalisation
Tous les appels de l'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>" }