Supervisión de una integración
Estados de integración
Los siguientes estados de integración describen la integración:
Creating
: la integración se está creando.Active
: la integración envía datos transaccionales al destino.Modifying
: la integración se está modificando.Syncing
: la integración detectó un error recuperable y vuelve a propagar los datos.Needs attention
: la integración detectó un evento o error que requiere la intervención manual para su resolución. Para solucionar el problema, siga las instrucciones del mensaje de error que aparece en los detalles de la integración.Failed
: la integración detectó un evento o error irrecuperable. Debe eliminar y volver a crear la integración.Deleting
: la integración se está eliminando.
Visualización de los registros de Amazon CloudWatch para una integración
Las integraciones sin ETL de AWS Glue generan registros de Amazon CloudWatch para obtener visibilidad del movimiento de datos. Los eventos de registro relacionados con cada ingesta exitosa o cualquier fallo debido a registros de datos problemáticos en el origen, errores de escritura de datos por cambios en el esquema o permisos insuficientes se envían a un grupo de registros predeterminado creado en la cuenta del cliente.
Para cada integración creada, los eventos de registro de esa integración se recopilarán en /aws-glue/zeroETL-integrations/logs/
dentro de Amazon CloudWatch. Dentro del grupo de registro, los mensajes de registro se dividirán en flujos de registros. Cada integración creada tiene un flujo de registro dedicado donde se escriben todos los registros de esa integración. Por ejemplo, los registros de una integración con IntegrationArn arn:aws:glue:us-east-1:123456789012:integration:03cabe77-79e7-4b7a-b3da-8c160bea6bbf
se pueden encontrar en /aws-glue/zeroETL-integrations/logs/03cabe77-79e7-4b7a-b3da-8c160bea6bbf. {IntegrationId} se puede obtener a partir de {integrationArn}, generado cuando se crea una integración.
nota
En un escenario de uso entre cuentas, los registros de procesamiento del origen se generan en la cuenta de origen donde existe la integración, y los registros de procesamiento del destino se generan en la cuenta de destino donde se encuentra la base de datos de destino.
Permisos de IAM necesarios para habilitar el registro
Al crear la integración, los siguientes permisos de IAM son necesarios para los roles de origen y destino a fin de habilitar el registro en CloudWatch para una integración. Las integraciones sin ETL de AWS Glue utilizan estos permisos asignados en los roles de origen y destino para enviar registros de CloudWatch a las cuentas de los clientes.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", ], "Resource": [ "*" ] } ] }
Mensajes de registro
Formato de registro: las integraciones sin ETL generan cuatro tipos de mensajes de registro:
// Ingestion started { "integrationArn": "arn:aws:glue:us-east-2:123456789012:integration/1a012bba-123a-1bba-ab1c-173de3b12345", ... "messageType": "IngestionStarted", "details": { "tableName": "testDDBTable", "message": "Ingestion Job started" } } // Data processing stats on successful table ingestion { ... "messageType": "IngestionProcessingStats", "details": { "tableName": "testDDBTable", "insert_count": 100, "update_count": 10, "delete_count": 10 } } // Ingestion failure logs for failed table-processing { ... "messageType": "IngestionFailed", "details": { "tableName": "testDDBTable", "errorMessage": "Failed to ingest data with error: Target Glue database not found.", "error_code" : "client_error" } } // Ingestion completed notification with lastSyncedTimestamp { ... "messageType": "IngestionCompleted", "details": { "tableName": "testDDBTable", "message": "Ingestion Job completed" "lastSyncedTimestamp": "1132344255745" } }
Visualización de métricas de Amazon CloudWatch para una integración
Una vez que se complete la integración, podrá ver estas métricas de Amazon CloudWatch generadas en su cuenta para cada ejecución de trabajo de AWS Glue:
Espacio de nombres de métricas de CloudWatch: “AWS/Glue/ZeroETL”
Dimensiones de las métricas:
integrationArn
loadType
tableName
Nombres de métricas:
InsertCount
: número de registros insertados en la tabla Iceberg de destino.UpdateCount
: número de registros actualizados en la tabla Iceberg de destino.DeleteCount
: número de registros eliminados de la tabla Iceberg de destino.IngestionSucceeded
: cuente 1, si la ingestión se realizó correctamente para la integración.IngestionFailed
: cuente 1, si la ingestión no se realizó correctamente para la integración.LastSyncTimestamp
: marca de tiempo hasta la cual se sincronizó el origen con el destino.
Administración de notificaciones de eventos con Amazon EventBridge
Las integraciones sin ETL utilizan Amazon EventBridge para administrar notificaciones de eventos y mantenerlo informado sobre los cambios en las integraciones. Amazon EventBridge es un servicio de bus de eventos sin servidor que se puede utilizar para conectar las aplicaciones con datos de varios orígenes. En este caso, el origen de eventos es AWS Glue. Los eventos, que son cambios supervisados en un entorno, se envían automáticamente a EventBridge desde AWS Glue. Los eventos se envían casi en tiempo real.
EventBridge proporciona un entorno para escribir reglas de eventos, que pueden especificar las acciones que se deben realizar para eventos específicos. También puede configurar destinos, que son recursos a los que EventBridge puede enviar un evento. Un objetivo puede incluir un destino de API, un grupo de registro de Amazon CloudWatch, etc. Para obtener más información sobre reglas, consulte Reglas de Amazon EventBridge. Para obtener más información sobre destinos, consulte Destinos de Amazon EventBridge.
Para capturar todas las notificaciones sin ETL, cree una regla en EventBridge que coincida con lo siguiente:
{ "source": [{ "prefix": "aws.glue-zero-etl“ }], "detail-type": [{ "prefix": "Glue Zero ETL“ }] }
En la siguiente tabla se incluyen eventos de integración sin ETL con metadatos adicionales:
Tipo de detalle orientado al cliente | Explicación |
---|---|
Se completó la ingesta sin ETL de Glue | La ejecución individual de una entidad se completó correctamente. |
Se produjo un error en la ingesta sin ETL de Glue | La ejecución individual de una entidad no se completó correctamente (ya sea por un error del cliente o del sistema). |
La integración sin ETL de Glue ha sido resincronizada. | La integración ha sido resincronizada. |
Se produjo un error en la integración sin ETL | El estado de la integración ha cambiado a FALLIDO debido a un error. |
La integración sin ETL de Glue necesita atención | El estado de la integración ha cambiado a REQUIERE ATENCIÓN debido a un error. |