

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用任務報告監控您的資料傳輸
<a name="task-reports"></a>

*任務報告*提供有關任務執行期間嘗試傳輸、略過、驗證和刪除哪些 AWS DataSync 嘗試的詳細資訊。如需詳細資訊，請參閱[DataSync 如何傳輸檔案、物件和目錄](how-datasync-transfer-works.md#transferring-files)。

任務報告會以 JSON 格式產生。您可以在報告中自訂詳細資訊層級：
+ [只有任務報告的摘要](#task-report-types-summary)會提供您任務執行的必要詳細資訊，例如傳輸的檔案數量，以及 DataSync 是否可以驗證這些檔案的資料完整性。
+ [標準任務報告](#task-report-types-standard)包含摘要和詳細報告，其中列出 DataSync 嘗試傳輸、略過、驗證和刪除的每個檔案、物件或資料夾。使用標準任務報告，您也可以指定[報告層級](#task-report-level)，以僅顯示任務執行的錯誤或其成功和錯誤。

## 使用案例
<a name="task-reports-use-cases"></a>

以下是任務報告可協助您監控和稽核資料傳輸的一些情況：
+ 遷移數百萬個檔案時，請快速識別 DataSync 無法傳輸的檔案。
+ 驗證檔案的chain-of-custody程序。

## 僅摘要任務報告
<a name="task-report-types-summary"></a>

僅是任務執行摘要的報告包含下列詳細資訊：
+  AWS 帳戶 執行任務執行的
+ 來源和目的地位置
+ 略過、傳輸、驗證和刪除的檔案、物件和資料夾總數
+ 已傳輸的總位元組數 （邏輯和實體）
+ 如果任務執行已完成、已取消或發生錯誤
+ 開始和結束時間 （包括轉移的總時間）
+ 任務的設定 （例如頻寬限制、資料完整性驗證，以及 DataSync 傳輸的其他選項）

## 標準任務報告
<a name="task-report-types-standard"></a>

標準任務報告包含任務執行的[摘要](#task-report-types-summary)，以及 DataSync 嘗試傳輸、略過、驗證和刪除內容的詳細報告。

**Topics**
+ [報告層級](#task-report-level)
+ [已傳輸的報告](#task-report-types-transferred)
+ [略過的報告](#task-report-types-skipped)
+ [已驗證的報告](#task-report-types-verified)
+ [已刪除的報告](#task-report-types-deleted)

### 報告層級
<a name="task-report-level"></a>

使用標準任務報告，您可以選擇下列其中一個報告層級：
+ 僅限錯誤
+ 成功和錯誤 （基本上是任務執行期間發生的一切清單）

例如，您可能想要查看 DataSync 在傳輸期間成功略過哪些檔案，以及未略過哪些檔案。DataSync 成功略過的檔案可能是您刻意希望 DataSync 排除的檔案，因為它們已存在於目的地位置。不過，執行個體的略過錯誤可能表示 DataSync 沒有讀取檔案的正確許可。

### 已傳輸的報告
<a name="task-report-types-transferred"></a>

DataSync 在任務執行期間嘗試傳輸的檔案、物件和目錄清單。傳輸的報告包含下列詳細資訊：
+ 傳輸資料的路徑
+ 傳輸的內容 （內容、中繼資料或兩者）
+ 中繼資料，包括資料類型、內容大小 （僅限物件和檔案） 等
+ 轉移項目的時間
+ 物件版本 （如果目的地是已啟用版本控制的 Amazon S3 儲存貯體）
+ 如果目的地中覆寫了某個項目
+ 是否成功傳輸項目

**注意**  
在 S3 儲存貯體之間移動資料時，您在[來源位置](create-s3-location.md)中指定的字首可能會顯示在報告 （或 Amazon CloudWatch logs) 中，即使該字首不存在為目的地位置中的物件。（在 DataSync 主控台中，您可能也會注意到此字首顯示為略過或已驗證的資料。)

### 略過的報告
<a name="task-report-types-skipped"></a>

DataSync 在您的來源位置找到但未嘗試傳輸的檔案、物件和目錄清單。DataSync 略過資料的原因可能取決於幾個因素，例如如何設定任務和儲存系統許可。以下是一些範例：
+ 您的來源和目的地位置中存在一個檔案。自上一個任務執行以來，來源中的 檔案尚未修改。由於您[只傳輸已變更的資料](configure-metadata.md#task-option-transfer-mode)，因此 DataSync 不會在您下次執行任務時傳輸該檔案。
+ 存在於兩個位置的物件都會在您的來源中變更。當您執行任務時，DataSync 會略過目的地中的此物件，因為您的任務不會[覆寫目的地中的資料](configure-metadata.md#task-option-file-object-handling)。
+ DataSync 會略過來源中使用[封存儲存類別](create-s3-location.md#using-storage-classes)且未還原的物件。您必須還原封存的物件，DataSync 才能讀取它。
+ DataSync 會略過來源位置中的檔案、物件或目錄，因為它無法讀取。如果發生這種情況，且不預期會發生這種情況，請檢查儲存體的存取許可，並確保 DataSync 可以讀取略過的內容。

略過的報告包含下列詳細資訊：
+ 略過資料的路徑
+ 略過項目的時間
+ 略過的原因
+ 是否成功略過項目

**注意**  
略過的報告在包含成功和錯誤時可能很大，您可以將任務設定為[僅傳輸已變更的資料](configure-metadata.md)，且來源資料已存在於目的地中。

### 已驗證的報告
<a name="task-report-types-verified"></a>

DataSync 在任務執行期間嘗試驗證 完整性的檔案、物件和目錄清單。已驗證的資料報告包含下列詳細資訊：
+ 已驗證資料的路徑
+ 驗證項目的時間
+ 驗證錯誤的原因 （如果有的話）
+ 來源和目的地 SHA256 檢查總和 （僅限 檔案）
+ 項目是否已成功驗證

請注意以下有關已驗證報告的事項：
+ 當您將任務設定為[僅驗證傳輸的資料](configure-data-verification-options.md)時，DataSync 在某些情況下不會驗證目錄，或無法傳輸的檔案或物件。在任何一種情況下，DataSync 都不會在此報告中包含未驗證的資料。
+ 如果您使用的是[增強型模式](choosing-task-mode.md)，如果您要傳輸大型物件，則驗證可能需要比平常更長的時間。

### 已刪除的報告
<a name="task-report-types-deleted"></a>

在任務執行期間刪除的檔案、目錄和物件清單。只有當您將[任務設定為](configure-metadata.md)刪除不在來源的目的地位置中的資料時，DataSync 才會產生此報告。刪除的資料報告包含下列詳細資訊：
+ 已刪除資料的路徑
+ 項目是否已成功刪除
+ 刪除項目的時間

## 任務報告範例
<a name="task-report-example"></a>

任務報告中的詳細資訊層級由您決定。以下是使用下列組態傳輸資料報告的一些範例：
+ **報告類型** – 標準
+ **報告層級** – 成功與錯誤

**注意**  
報告針對時間戳記格式使用 ISO-8601 標準。時間以 UTC 為單位，並以奈秒為單位。此行為與測量其他一些任務報告指標的方式不同。例如，[任務執行詳細資訊](https://docs.aws.amazon.com/datasync/latest/userguide/API_TaskExecutionResultDetail.html)，例如 `TransferDuration`和 `VerifyDuration`，以毫秒為單位。

增強型模式任務報告使用的結構描述與基本模式任務報告略有不同。以下範例可協助您了解根據使用[的任務模式](choosing-task-mode.md)，對報告有何預期。

**成功狀態的傳輸資料報告範例**  
下列報告顯示名為 之物件的成功傳輸`object1.txt`。  

```
{
    "TaskExecutionId": "exec-abcdefgh12345678",
    "Transferred": [{
        "RelativePath": "object1.txt",
        "SourceMetadata": {
            "Type": "Object",
            "ContentSize": 6,
            "LastModified": "2024-10-04T14:40:55Z",
            "SystemMetadata": {
                "ContentType": "binary/octet-stream",
                "ETag": "\"9b2d7e1f8054c3a2041905d0378e6f14\"",
                "ServerSideEncryption": "AES256"
            },
            "UserMetadata": {},
            "Tags": []
        },
        "Overwrite": "False",
        "DstS3VersionId": "jtqRtX3jN4J2G8k0sFSGYK1f35KqpAVP",
        "TransferTimestamp": "2024-10-04T14:48:39.748862183Z",
        "TransferType": "CONTENT_AND_METADATA",
        "TransferStatus": "SUCCESS"
    }]
}
```

```
{
    "TaskExecutionId": "exec-abcdefgh12345678",
    "Transferred": [{
        "RelativePath": "/object1.txt",
        "SrcMetadata": {
            "Type": "Regular",
            "ContentSize": 6,
            "Mtime": "2022-01-07T16:59:26.136114671Z",
            "Atime": "2022-01-07T16:59:26.136114671Z",
            "Uid": 0,
            "Gid": 0,
            "Mode": "0644"
        },
        "Overwrite": "False",
        "DstS3VersionId": "jtqRtX3jN4J2G8k0sFSGYK1f35KqpAVP",
        "TransferTimestamp": "2022-01-07T16:59:45.747270957Z",
        "TransferType": "CONTENT_AND_METADATA",
        "TransferStatus": "SUCCESS"
    }]
}
```

**具有錯誤狀態的傳輸資料報告範例**  
下列報告提供 DataSync 無法傳輸名為 之物件的範例`object1.txt`。  
此報告顯示由於許可問題`object1.txt`，DataSync 無法存取名為 的 AWS KMS 物件。（如果您收到類似這樣的錯誤，請參閱 [使用伺服器端加密存取 S3 儲存貯體](create-s3-location.md#create-s3-location-encryption)。)  

```
{
    "TaskExecutionId": "exec-abcdefgh12345678",
    "Transferred": [{
        "RelativePath": "object1.txt",
        "SourceMetadata": {
            "Type": "Object",
            "ContentSize": 6,
            "LastModified": "2022-10-07T20:48:32Z",
            "SystemMetadata": {
                "ContentType": "binary/octet-stream",
                "ETag": "\"3a7c0b2f1d9e5c4a6f8b2e0d1c9f7a3b2\"",
                "ServerSideEncryption": "AES256"
            },
            "UserMetadata": {},
            "Tags": []
        },
        "Overwrite": "False",
        "TransferTimestamp": "2022-10-09T16:05:11.134040717Z",
        "TransferType": "CONTENT_AND_METADATA",
        "TransferStatus": "FAILED",
        "ErrorCode": "AccessDenied",
        "ErrorDetail": "User: arn:aws:sts::111222333444:assumed-role/AWSDataSyncS3Bucket/AwsSync-loc-0b3017fc4ba4a2d8d is not authorized to perform: kms:GenerateDataKey on resource: arn:aws:kms:us-east-1:111222333444:key/1111aaaa-22bb-33cc-44d-5555eeee6666 because no identity-based policy allows the kms:GenerateDataKey action"
    }]
}
```
此報告顯示名為 的物件因為 S3 儲存貯體許可問題`object1.txt`而未傳輸。（如果您收到類似這樣的錯誤，請參閱 [提供對 S3 儲存貯體的 DataSync 存取權](create-s3-location.md#create-s3-location-access)。)  

```
{
    "TaskExecutionId": "exec-abcdefgh12345678",
    "Transferred": [{
        "RelativePath": "/object1.txt",
        "SrcMetadata": {
            "Type": "Regular",
            "ContentSize": 6,
            "Mtime": "2022-01-07T16:59:26.136114671Z",
            "Atime": "2022-01-07T16:59:26.136114671Z",
            "Uid": 0,
            "Gid": 0,
            "Mode": "0644"
        },
        "Overwrite": "False",
        "DstS3VersionId": "jtqRtX3jN4J2G8k0sFSGYK1f35KqpAVP",
        "TransferTimestamp": "2022-01-07T16:59:45.747270957Z",
        "TransferType": "CONTENT_AND_METADATA",
        "TransferStatus": "FAILED",
        "FailureReason": "S3 Get Object Failed",
        "FailureCode": 40974
    }]
}
```

## 限制
<a name="task-report-limitations"></a>
+ 個別任務報告不得超過 5 MB。如果您要複製大量檔案，您的任務報告可能會分割成多個報告。
+ 在某些情況下，建立任務報告可能會影響資料傳輸的效能。例如，當您的網路連線具有高延遲，且您正在傳輸的檔案很小，或者您只複製中繼資料變更時，您可能會注意到這一點。