View a markdown version of this page

Supervisión de la entrega de datos - Amazon Kinesis Data Streams

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Supervisión de la entrega de datos

Utiliza este tema para obtener información sobre cómo supervisar tus envíos mediante las CloudWatch métricas, CloudWatch los registros y AWS CloudTrail.

CloudWatch métricas

Cada entrega publica las métricas CloudWatch en el espacio de AWS/Kinesis nombres. Los nombres de las métricas tienen como prefijo el tipo de destino: DeliveryToS3 para las entregas de Amazon S3 de uso general y DeliveryToIceberg para las entregas en tablas de streaming. Utilice estas métricas para supervisar el estado y el rendimiento de su entrega.

Métricas de entrega de Amazon S3 (DeliveryToS3)
Nombre de métrica Unidad Description (Descripción)
DeliveryToS3.DataFreshness Segundos La antigüedad del registro más antiguo que aún no se ha entregado en el destino. El aumento de los valores indica que la entrega se está retrasando.
DeliveryToS3.BytesIn Bytes El volumen de datos leídos en la ruta de entrega desde la transmisión.
DeliveryToS3.BytesProcessed Bytes El volumen de datos procesado por la entrega.
DeliveryToS3.BytesOut Bytes El volumen de datos escritos en el destino.
DeliveryToS3.RecordCount Recuento El número total de registros leídos de la transmisión.
DeliveryToS3.SuccessfulRecordCount Recuento El número de registros que se entregaron correctamente al destino.
DeliveryToS3.FailedRecordCount Recuento El número de registros que no se entregaron. Un valor distinto de cero es la señal de error clave.
DeliveryToS3.DeliverySuccess Recuento El número de operaciones de entrega realizadas correctamente.
DeliveryToS3.DLQDeliverySuccess Recuento El número de registros escritos correctamente en la cola de correo muerto.
Métricas de entrega de la tabla de streaming () DeliveryToIceberg
Nombre de métrica Unidad Description (Descripción)
DeliveryToIceberg.DataFreshness Segundos La antigüedad del registro más antiguo que aún no se ha enviado a la tabla. El aumento de los valores indica que la entrega se está retrasando.
DeliveryToIceberg.BytesIn Bytes El volumen de datos leídos en la ruta de entrega desde la transmisión.
DeliveryToIceberg.BytesProcessed Bytes El volumen de datos procesado por la entrega.
DeliveryToIceberg.BytesOut Bytes El volumen de datos escritos en la tabla.
DeliveryToIceberg.TotalRowCount Recuento El número total de filas leídas de la transmisión.
DeliveryToIceberg.SuccessfulRowCount Recuento El número de filas que se entregaron correctamente a la tabla.
DeliveryToIceberg.FailedRowCount Recuento El número de filas que no se entregaron. Un valor distinto de cero es la señal de error clave.
DeliveryToIceberg.CommitSuccess Recuento El número de confirmaciones exitosas de Iceberg.
DeliveryToIceberg.DLQDeliverySuccess Recuento El número de registros que se han escrito correctamente en la cola de correo muerto.

Dimensiones

Las métricas de entrega se publican con las siguientes dimensiones:

  • ChannelName— El nombre de la entrega.

  • ChannelId— El identificador único de la entrega.

  • StreamName— El nombre de la transmisión de Kinesis Data Streams de origen.

nota

Para segmentar una entrega específica en una CloudWatch alarma, especifique las tres dimensiones. Para navegar o realizar consultas con GetMetricData yListMetrics, puedes filtrar por un subconjunto de dimensiones, por ejemplo, solo. ChannelName

Alarmas recomendadas

CloudWatch Alarmas recomendadas para las entregas
Alarma Métrica Condición Description (Descripción)
Alta tasa de fallos DeliveryToS3.FailedRecordCount > 0 durante 5 minutos Los registros no se entregan. Investigue los desajustes de esquema o los problemas de destino.
Degradación de la frescura de DeliveryToS3.DataFreshness > umbral La entrega de datos se está retrasando. Investigue los problemas de entrega, como la falta de permisos en la función de ejecución del servicio o la limitación en el destino.
No se ha entregado ningún dato DeliveryToS3.SuccessfulRecordCount = 0 durante 15 minutos No se ha entregado ningún registro. Verifica que la transmisión tenga datos y que la entrega esté activa.
Fallos en la entrega de DLQ DeliveryToS3.DLQDeliverySuccess = 0 cuando FailedRecordCount > 0 Los registros fallidos no se pueden escribir en la cola de mensajes muertos. Compruebe los permisos del bucket DLQ.
nota

Las alarmas anteriores utilizan las DeliveryToS3 métricas de una entrega de Amazon S3. Para una entrega en tabla de streaming, utilice las DeliveryToIceberg métricas equivalentes (DeliveryToIceberg.FailedRowCountDeliveryToIceberg.DataFreshness,DeliveryToIceberg.SuccessfulRowCount, yDeliveryToIceberg.DLQDeliverySuccess).

CloudWatch Registros

Cada entrega puede publicar registros detallados en CloudWatch Logs para la depuración y la visibilidad operativa.

  • Grupo de registros predeterminado: /aws/kinesis/channelName/channelId

  • Secuencia de registros — DestinationDelivery

Habilitar CloudWatch los registros mediante la CLI

Habilite CloudWatch los registros al crear o actualizar una entrega mediante 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 } }'

Cuando habilitas CloudWatch los registros sin especificar un grupo de registros, la entrega usa el grupo de registros predeterminado/aws/kinesis/channelName/channelId. Si especificas uno personalizadoLogGroupName, asegúrate de que los permisos de registro de la función de ejecución del servicio se asignen a ese mismo grupo de CloudWatch registros. Para conocer los permisos necesarios, consulte Permisos de IAM para la entrega de datos.

También puedes habilitar o actualizar CloudWatch los registros de una entrega existente con el update-channel comando, pasando el mismo --logging-configuration valor.

Permisos necesarios

Para habilitar CloudWatch los registros, la función de ejecución del servicio de la entrega debe tener los siguientes permisos:

  • logs:CreateLogGroup

  • logs:CreateLogStream

  • logs:PutLogEvents

Limite estos permisos al ARN del grupo de registros específico. Consulte el Permisos de CloudWatch registro opcionales ejemplo completo de la política.

AWS CloudTrail registrar

Todas las llamadas a la API de entrega son grabadas por AWS CloudTrail. El siguiente es un ejemplo de AWS CloudTrail evento para una CreateChannel llamada:

{ "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>" }