本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
整合狀態
下列整合狀態說明整合:
Creating
- 正在建立整合。Active
- 整合會將交易資料傳送至目標。Modifying
- 正在修改整合。Syncing
- 整合遇到可復原的錯誤,正在重新查看資料。Needs attention
- 整合遇到需要手動介入才能解決的事件或錯誤。若要修正此問題,請遵循整合詳細資訊錯誤訊息中的指示。Failed
- 整合遇到無法復原的事件或錯誤。您必須刪除並重新建立整合。Deleting
- 正在刪除整合。
檢視整合的 Amazon CloudWatch logs
AWS Glue 零 ETL 整合會產生 Amazon CloudWatch logs,讓您清楚了解資料移動。與每次成功擷取相關的日誌事件,或因來源資料記錄有問題而發生的任何失敗,或因結構描述變更或許可不足而導致的資料寫入錯誤,都會傳送到客戶帳戶中建立的預設日誌群組。
對於每個建立的整合,該整合的日誌事件會在 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 許可
建立整合時,來源和目標角色需要下列 IAM 許可,才能為整合啟用 CloudWatch 記錄。 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 指標
整合完成後,您可以看到這些 Amazon Cloudwatch 指標在您的帳戶中針對每個 AWS Glue 任務執行產生:
CloudWatch 指標命名空間:"AWS/Glue/ZeroETL"
指標維度:
integrationArn
loadType
tableName
指標名稱:
InsertCount
- 插入目標 Iceberg 資料表的記錄數目。UpdateCount
- 目標 Iceberg 資料表中更新的記錄數目。DeleteCount
- 從目標 Iceberg 資料表中刪除的記錄數目。IngestionSucceeded
- 如果整合的擷取成功,則計算 1。IngestionFailed
- 計數 1,如果整合的擷取失敗。LastSyncTimestamp
- 時間戳記,直到來源已同步到目標為止。
使用 Amazon EventBridge 管理事件通知
零 ETL 整合使用 Amazon EventBridge 來管理事件通知,讓您隨時 up-to-date 了解整合中的最新變更。Amazon EventBridge 是無伺服器事件匯流排服務,可讓您用於將應用程式與來自各種來源的資料互相連線。在此情況下,事件來源為 AWS Glue。在環境中受監控變更的事件會自動從 傳送至 EventBridge AWS Glue 。系統會以接近即時的速度傳送事件。
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 整合重新同步 | 整合已重新同步。 |
Glue Zero ETL 整合失敗 | 由於發生錯誤,整合狀態已變更為 FAILED。 |
Glue Zero ETL 整合需要注意 | 由於發生錯誤,整合狀態已變更為 NEEDS_ATTENTION。 |