如何檢視從一個 Amazon S3 儲存貯體複寫失敗到另一個儲存貯體的物件?

1 分的閱讀內容
0

在設定從一個 Amazon Simple Storage Service (Amazon S3) 儲存貯體到另一個儲存貯體的複寫時,我想要擷取複寫失敗的物件清單。

簡短描述

您可以開啟 S3 複寫時間控制 (S3 RTC),為複寫失敗的合格物件設定事件通知。您也可以使用 S3 RTC 為複寫時間超過 15 分鐘的合格物件設定通知。此外,您可以使用下列其中一種方式取得複寫失敗的物件清單:

  • 查看 Amazon S3 庫存報告
  • 運行 HeadObject API 調用

解決方案

Amazon S3 庫存報告

Amazon S3 庫存報告會每天或每週列出您的物件及其中繼資料。物件的複寫狀態可以是「擱置中」、「已完成」、「失敗」或「複寫」。

若要尋找複寫失敗的物件,請針對複寫狀態為「失敗」的物件篩選最近的報告。然後,您可以將物件手動複寫到目的地儲存貯體。您也可以將物件重新上載至來源儲存貯體 (在修正權限之後),以啟動複寫。

您也可以使用 Amazon Athena 查詢複寫狀態的庫存報告。

HeadObject 調用

如需來源儲存貯體中設定用於複寫的物件清單,您可以在物件上執行 HeadObject API 調用。HeadObject 會傳回物件的「待處理」、「已完成」或「失敗」複寫狀態。在 HeadObject API 調用的響應中,複寫狀態在 x-amz-replication-status元素中找到。

**注意:**要運行 HeadObject,您必須具有對所請求物件的讀取權限。HEAD 請求與 GET 請求具有相同的選項,但不執行 GET。

HeadObject 傳回複寫狀態為「失敗」的物件之後,您可以將物件手動複寫到目的地儲存貯體。您也可以將物件重新上載至來源儲存貯體 (在修正權限之後),以啟動複寫。

**重要事項:**如果您手動將物件複寫到目的地儲存貯體,則 Amazon S3 庫存報告和 HeadObject API 呼叫會傳回失敗的複寫狀態。此複寫狀態適用於來源儲存貯體中的物件。若要變更物件的複寫狀態並啟動複寫,您必須將物件重新上傳至來源儲存貯體。如果新複寫成功,則物件的複寫狀況會變更為「已完成」。如果您必須手動將物件複寫到目的地儲存貯體,請務必記下手動複寫的日期。然後,依上次修改日期篩選具有「失敗」複寫狀態的物件。這麼做可讓您識別哪些物件已複寫或未複寫到目的地儲存貯體。

AWS 官方
AWS 官方已更新 1 年前