통합 모니터링
통합에 대한 Amazon CloudWatch 로그 보기
AWS Glue 제로 ETL 통합은 데이터 이동을 파악할 수 있도록 CloudWatch 로그를 생성합니다. 성공한 각 수집 또는 소스의 문제가 있는 데이터 레코드로 인해 발생하는 모든 실패, 스키마 변경 또는 권한 부족으로 인한 데이터 쓰기 오류와 관련된 로그 이벤트는 고객 계정에 생성된 기본 로그 그룹으로 내보냅니다.
생성된 각 통합의 로그 이벤트는 Cloudwatch의 /aws-glue/zeroETL-integrations/logs/에 수집됩니다. 로그 그룹 내에서 로그 메시지는 로그 스트림으로 분할됩니다. 생성된 각 통합에는 해당 통합에 대한 모든 로그가 기록되는 전용 로그 스트림이 있습니다.
참고
교차 계정 시나리오의 경우 통합이 존재하는 소스 계정에서 소스 처리 로그를 내보내고 대상 데이터베이스가 존재하는 대상 계정에서 대상 처리 로그를 내보냅니다.
로깅을 활성화하는 데 필요한 IAM 권한
통합을 생성할 때 통합에 대한 CloudWatch 로깅을 활성화하려면 소스 및 대상 역할에 다음 IAM 권한이 필요합니다. AWS Glue 제로 ETL 통합은 소스 및 대상 역할에 제공된 이러한 권한을 사용하여 CloudWatch 로그를 고객 계정으로 내보냅니다.
로그 메시지
로그 형식: 제로 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 작업이 실행될 때마다 계정에 생성된 Cloudwatch 지표를 볼 수 있습니다.
CloudWatch 지표 네임스페이스: "AWS/Glue/ZeroETL"
지표의 차원:
integrationArnloadTypetableName
지표 이름:
InsertCount- 대상 Iceberg 테이블에 삽입된 레코드 수입니다.UpdateCount- 대상 Iceberg 테이블에서 업데이트된 레코드 수입니다.DeleteCount- 대상 Iceberg 테이블에서 삭제된 레코드 수입니다.IngestionSucceeded- 통합에서 수집이 성공한 경우 1을 카운트합니다.IngestionFailed- 통합에서 수집이 실패한 경우 1을 카운트합니다.LastSyncTimestamp- 소스가 대상에 동기화된 때의 타임스탬프입니다.
Amazon EventBridge를 사용하여 이벤트 알림 관리
제로 ETL 통합은 Amazon EventBridge를 통해 이벤트 알림을 관리하여 통합의 변경 사항에 대한 최신 정보를 제공합니다. Amazon EventBridge는 애플리케이션을 다양한 소스의 데이터와 연결하는 데 사용할 수 있는 서버리스 이벤트 버스 서비스입니다. 이 경우 이벤트 소스는 AWS Glue입니다. 환경에서 모니터링되는 변경 사항인 이벤트는 AWS Glue에서 EventBridge로 자동으로 전송됩니다. 이벤트는 거의 실시간으로 전송됩니다.
모든 제로 ETL 알림을 캡처하려면 다음과 일치하는 Eventbridge 규칙을 생성합니다.
{ "source": [{ "prefix": "aws.glue-zero-etl" }], "detail-type": [{ "prefix": "Glue Zero ETL" }] }
다음 테이블에는 제로 ETL 통합 이벤트가 나와 있습니다.
| 세부 정보 유형 | 설명 |
|---|---|
| AWS Glue 제로 ETL 수집 완료 | 엔터티에 대한 개별 실행이 성공적으로 완료되었습니다. |
| AWS Glue 제로 ETL 수집 실패 | 엔터티에 대한 개별 실행이 성공적으로 완료되지 않았습니다(클라이언트 또는 시스템 오류). |
| AWS Glue 제로 ETL 통합 재동기화 완료 | 통합이 RESYNCED 상태가 되었습니다. |
| AWS Glue 제로 ETL 통합 실패 | 오류로 인해 통합 상태가 FAILED로 변경되었습니다. |
| AWS Glue 제로 ETL 통합 주의 필요 | 오류로 인해 통합 상태가 NEEDS_ATTENTION으로 변경되었습니다. |
| AWS Glue 제로 ETL 수집 진행 중 | 엔터티에 대한 개별 실행이 부분적으로 완료되었습니다. |