통합 모니터링
통합 상태
다음 통합 상태는 통합을 설명합니다.
Creating
- 통합이 생성 중입니다.Active
- 통합이 트랜잭션 데이터를 대상으로 전송하고 있습니다.Modifying
- 통합이 수정 중입니다.Syncing
- 통합에 복구 가능한 오류가 발생하여 데이터를 다시 시드하고 있습니다.Needs attention
- 통합에 수동 개입이 필요한 이벤트 또는 오류가 발생하여 이를 해결해야 합니다. 문제를 해결하기 위해 통합 세부 정보에 있는 오류 메시지의 지침을 따릅니다.Failed
- 통합에서 복구할 수 없는 이벤트 또는 오류가 발생했습니다. 통합을 삭제하고 다시 만들어야 합니다.Deleting
- 통합이 삭제되고 있습니다.
통합에 대한 Amazon CloudWatch 로그 보기
AWS Glue 제로 ETL 통합은 데이터 이동을 파악할 수 있도록 Amazon CloudWatch 로그를 생성합니다. 성공한 각 수집 또는 소스의 문제가 있는 데이터 레코드로 인해 발생하는 모든 실패, 스키마 변경 또는 권한 부족으로 인한 데이터 쓰기 오류와 관련된 로그 이벤트는 고객 계정에 생성된 기본 로그 그룹으로 내보냅니다.
생성된 각 통합의 로그 이벤트는 Amazon Cloudwatch의 /aws-glue/zeroETL-integrations/logs/
에서 수집됩니다. 로그 그룹 내에서 로그 메시지는 로그 스트림으로 분할됩니다. 생성된 각 통합에는 해당 통합에 대한 모든 로그가 기록되는 전용 로그 스트림이 있습니다. 예를 들어, IntegrationArn arn:aws:glue:us-east-1:123456789012:integration:03cabe77-79e7-4b7a-b3da-8c160bea6bbf
와의 통합에 대한 로그는 /aws-glue/zeroETL-integrations/logs/03cabe77-79e7-4b7a-b3da-8c160bea6bbf에서 찾을 수 있습니다. 통합이 생성될 때 생성된 {integrationArn}에서 {IntegrationId}를 참조할 수 있습니다.
참고
교차 계정 시나리오의 경우 통합이 존재하는 소스 계정에서 소스 처리 로그를 내보내고 대상 데이터베이스가 존재하는 대상 계정에서 대상 처리 로그를 내보냅니다.
로깅을 활성화하는 데 필요한 IAM 권한
통합을 생성할 때 통합에 대한 CloudWatch 로깅을 활성화하려면 소스 및 대상 역할에 다음 IAM 권한이 필요합니다. AWS Glue 제로 ETL 통합은 소스 및 대상 역할에 제공된 이러한 권한을 사용하여 CloudWatch 로그를 고객 계정으로 내보냅니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", ], "Resource": [ "*" ] } ] }
로그 메시지
로그 형식: 제로 ETL 통합은 네 가지 유형의 로그 메시지를 내보냅니다.
// 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" } }
통합에 대한 Amazon CloudWatch 지표 보기
통합이 완료되면 각 AWS Glue 작업 실행에 대해 계정에 생성된 Amazon Cloudwatch 지표를 볼 수 있습니다.
CloudWatch 지표 네임스페이스: "AWS/Glue/ZeroETL"
지표의 차원:
integrationArn
loadType
tableName
지표 이름:
InsertCount
- 대상 Iceberg 테이블에 삽입된 레코드 수입니다.UpdateCount
- 대상 Iceberg 테이블에서 업데이트된 레코드 수입니다.DeleteCount
- 대상 Iceberg 테이블에서 삭제된 레코드 수입니다.IngestionSucceeded
- 통합에서 수집이 성공한 경우 1을 카운트합니다.IngestionFailed
- 통합에서 수집이 실패한 경우 1을 카운트합니다.LastSyncTimestamp
- 소스가 대상에 동기화된 때의 타임스탬프입니다.
Amazon EventBridge를 사용하여 이벤트 알림 관리
제로 ETL 통합은 Amazon EventBridge를 통해 이벤트 알림을 관리하여 통합의 변경 사항에 대한 최신 정보를 제공합니다. Amazon EventBridge는 애플리케이션을 다양한 소스의 데이터와 연결하는 데 사용할 수 있는 서버리스 이벤트 버스 서비스입니다. 이 경우 이벤트 소스는 AWS Glue입니다. 환경에서 모니터링되는 변경 사항인 이벤트는 AWS Glue에서 EventBridge로 자동으로 전송됩니다. 이벤트는 거의 실시간으로 전송됩니다.
EventBridge는 특정 이벤트에 대해 수행할 작업을 지정하는 이벤트 규칙을 작성할 수 있는 환경을 제공합니다. 또한 EventBridge가 이벤트를 보낼 수 있는 리소스인 대상을 설정할 수도 있습니다. 대상에는 API 대상, Amazon CloudWatch 로그 그룹 등이 포함될 수 있습니다. 규칙에 대한 자세한 내용은 Amazon EventBridge 규칙을 참조하세요. 대상에 대한 자세한 내용은 Amazon EventBridge 대상을 참조하세요.
모든 제로 ETL 알림을 캡처하려면 다음과 일치하는 Eventbridge 규칙을 생성합니다.
{ "source": [{ "prefix": "aws.glue-zero-etl“ }], "detail-type": [{ "prefix": "Glue Zero ETL“ }] }
다음 테이블에는 추가 메타데이터와 함께 제로 ETL 통합 이벤트가 나와 있습니다.
고객에게 표시되는 세부 정보 유형 | 설명 |
---|---|
Glue 제로 ETL 수집 완료 | 엔터티에 대한 개별 실행이 성공적으로 완료되었습니다. |
Glue 제로 ETL 수집 실패 | 엔터티에 대한 개별 실행이 성공적으로 완료되지 않았습니다(클라이언트 또는 시스템 오류). |
Glue 제로 ETL 통합 재동기화 완료 | 통합이 RESYNCED 상태가 되었습니다. |
Glue 제로 ETL 통합 실패 | 오류로 인해 통합 상태가 FAILED로 변경되었습니다. |
Glue 제로 ETL 통합 주의 필요 | 오류로 인해 통합 상태가 NEEDS_ATTENTION으로 변경되었습니다. |