

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# DataSync タスクレポートの作成
<a name="creating-task-report"></a>

AWS DataSync タスクレポートは、タスク実行の概要のみ、または DataSync が転送、スキップ、検証、削除を試みる内容に関する一連の詳細レポートにすることができます。

## 前提条件
<a name="setting-up-task-report"></a>

タスクレポートを作成するには、次の操作を行う必要があります。

**Topics**
+ [タスクレポート用に S3 バケットを作成する](#setting-up-task-report-create-bucket)
+ [S3 バケットにタスクレポートをアップロードすることを DataSync に許可する](#task-report-access)

### タスクレポート用に S3 バケットを作成する
<a name="setting-up-task-report-create-bucket"></a>

まだない場合は、DataSync がタスクレポートをアップロードできる [S3 バケットを作成](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html)します。レポートは S3 Standard ストレージクラスに保存されます。

このバケットでは、以下が推奨されます。
+ S3 バケットにデータを転送する予定があり、[**[削除されたファイルを保持する]** オプション](configure-metadata.md)を無効にした場合、同じバケットをタスクレポートに使用しないでください。そうしないと、DataSync はタスクを実行するたびに以前のタスクレポートをすべて削除します。これらのレポートは送信元に存在しないためです。
+ 複雑なアクセス許可の設定を回避するには、タスクレポートバケットが DataSync 転送タスクと同じ AWS アカウント およびリージョンにあることを確認してください。

### S3 バケットにタスクレポートをアップロードすることを DataSync に許可する
<a name="task-report-access"></a>

DataSync がタスクレポートを S3 バケットにアップロードできるようにする AWS Identity and Access Management (IAM) ロールを設定する必要があります。

DataSync コンソールでは、タスクレポートをほとんどの場合にバケットにアップロードする許可が自動的に含まれる IAM ロールを作成できます。この自動生成されたロールは、最小特権の観点からはニーズに合わない可能性あることに注意してください。このロールは、バケットがカスタマーマネージド AWS Key Management Service (AWS KMS) キー (SSE-KMS) で暗号化されている場合にも機能しません。このような場合、ロールが少なくとも次のことを行っていれば、ロールを手動で作成できます。
+ ロールの信頼されたエンティティにおける、[サービス間の混乱した代理の問題を防止します](https://docs.aws.amazon.com/datasync/latest/userguide/cross-service-confused-deputy-prevention.html)。

  次の詳しい例では、CodeBuild で `aws:SourceArn` および `aws:SourceAccount` グローバル条件コンテキストキーを使用して、DataSync の混乱した代理問題を回避する方法を示します。

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Principal": {
                  "Service": "datasync.amazonaws.com"
              },
              "Action": "sts:AssumeRole",
              "Condition": {
                  "StringEquals": {
                  "aws:SourceAccount": "123456789012"
                  },
                  "ArnLike": {
                  "aws:SourceArn": "arn:aws:datasync:us-east-1:123456789012:*"
                  }
              }
          }
      ]
  }
  ```

------
+ DataSync が S3 バケットにタスクレポートをアップロードすることを許可します。

  次の例では、バケット内の特定のプレフィックス (`reports/`) に対する `s3:PutObject` アクションのみを含めることでこれを行っています。

------
#### [ JSON ]

****  

  ```
  {
          "Version":"2012-10-17",		 	 	 
          "Statement": [{
              "Action": [
                  "s3:PutObject"
              ],
              "Effect": "Allow",
              "Resource": "arn:aws:s3:::your-task-reports-bucket/reports/*"
          }]
  }
  ```

------
+ S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、[キーポリシー](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html)には DataSync がバケットへのアクセスに使用する IAM ロールが含まれている必要があります。

  詳細については、「[サーバー側の暗号化を使用して S3 バケットにアクセスする](create-s3-location.md#create-s3-location-encryption)」を参照してください。

## 概要のみのタスクレポートの作成
<a name="creating-task-report-summary"></a>

DataSync タスクの作成時、タスクの開始時、またはタスクの更新時に、[概要のみ](task-reports.md#task-report-types-summary)を含むタスクレポートを設定できます。

以下のステップでは、タスクの作成時に概要のみのタスクレポートを設定する方法を示します。

### DataSync コンソールの使用
<a name="creating-task-report-console"></a>

1. [https://console.aws.amazon.com/datasync/](https://console.aws.amazon.com/datasync/) で AWS DataSync コンソールを開きます。

1. 左側のナビゲーションペインで **[データ転送]** を展開し、**[タスク]**、**[タスクの作成]** の順に選択します。

1. タスクのソースと送信先の場所を設定します。

   詳細については、[でデータを転送できる場所 AWS DataSync](working-with-locations.md)を参照してください。

1. **[タスクレポート]** セクションまで、下にスクロールします。**[レポートタイプ]** には **[概要のみ]** を選択します。

1. **[レポート用の S3 バケット]** には、DataSync がタスクレポートをアップロードする S3 バケットを選択します。
**ヒント**  
S3 バケットにデータを転送する予定があり、[**[削除されたファイルを保持する]** オプション](configure-metadata.md)を無効にした場合、同じバケットをタスクレポートに使用しないでください。そうしないと、DataSync はタスクを実行するたびに以前のタスクレポートをすべて削除します。これらのレポートは送信元に存在しないためです。

1. **[フォルダ]** には、DataSync が S3 バケットにレポートをアップロードするときにタスクレポートに使用するプレフィックス (例: **reports/**) を入力します。

   プレフィックスの末尾には適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ (`/`) です。詳細については、「*Amazon S3 ユーザーガイド*」の「[プレフィックスを使用してオブジェクトを整理する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)」を参照してください。

1. **[IAM role]** (IAM ロール) で、次のいずれかを実行します。
   + **[自動生成する]** を選択すると、DataSync は S3 バケットへのアクセスに必要な権限を持つ IAM ロールを自動的に作成します。

     DataSync が以前にこの S3 バケット用 IAM ロール を作成した場合、そのロールがデフォルトで選択されます。
   + 作成したカスタム IAM ロールを選択します。

     場合によっては、ロールを自分で作成する必要があります。詳細については、「[S3 バケットにタスクレポートをアップロードすることを DataSync に許可する](#task-report-access)」を参照してください。
**重要**  
S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには DataSync がバケットへのアクセスに使用する IAM ロールが含まれている必要があります。  
詳細については、「[サーバー側の暗号化を使用して S3 バケットにアクセスする](create-s3-location.md#create-s3-location-encryption)」を参照してください。

1. タスクの作成を完了したら、[タスクを開始](run-task.md)してデータの転送を開始します。

転送が完了すると、[タスクレポートを表示](task-report-viewing.md)できます。

### の使用 AWS CLI
<a name="creating-task-report-cli"></a>

1. 次の `create-task` AWS Command Line Interface (AWS CLI) コマンドをコピーします。

   ```
   aws datasync create-task \
     --source-location-arn arn:aws:datasync:us-east-1:123456789012:location/loc-12345678abcdefgh \
     --destination-location-arn arn:aws:datasync:us-east-1:123456789012:location/loc-abcdefgh12345678 \
     --task-report-config '{
       "Destination":{
         "S3":{
           "Subdirectory":"reports/",
           "S3BucketArn":"arn:aws:s3:::your-task-reports-bucket",
           "BucketAccessRoleArn":"arn:aws:iam::123456789012:role/bucket-iam-role"
           }
       },
       "OutputType":"SUMMARY_ONLY"  
     }'
   ```

1. `--source-location-arn` パラメータには、転送の送信元の Amazon リソースネーム (ARN) を指定します。を適切な `us-east-1`に AWS リージョン、 を適切な AWS アカウント 数値`123456789012`に、 を適切なソースロケーション ID `12345678abcdefgh` に置き換えます。

1. `--destination-location-arn` パラメータには、転送の送信先の ARN を指定します。を適切な `us-east-1`に AWS リージョン、 を適切な AWS アカウント 数値`123456789012`に、 を適切な送信先ロケーション ID `abcdefgh12345678` に置き換えます。

1. `--task-report-config` パラメータについては、以下を行います。
   + `Subdirectory` — `reports/` を DataSync がタスクレポートをアップロードする S3 バケットのプレフィックスに置き換えます。

     プレフィックスの末尾には適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ (`/`) です。詳細については、「*Amazon S3 ユーザーガイド*」の「[プレフィックスを使用してオブジェクトを整理する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)」を参照してください。
   + `S3BucketArn` — タスクレポートをアップロードする S3 バケットの ARN を指定します。
**ヒント**  
S3 バケットにデータを転送する予定があり、[**[削除されたファイルを保持する]** オプション](configure-metadata.md)を無効にした場合、同じバケットをタスクレポートに使用しないでください。そうしないと、DataSync はタスクを実行するたびに以前のタスクレポートをすべて削除します。これらのレポートは送信元に存在しないためです。
   + `BucketAccessRoleArn` — DataSync が S3 バケットにタスクレポートをアップロードすることを許可する IAM ロールを指定します。

     詳細については、「[S3 バケットにタスクレポートをアップロードすることを DataSync に許可する](#task-report-access)」を参照してください。
**重要**  
S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには DataSync がバケットへのアクセスに使用する IAM ロールが含まれている必要があります。  
詳細については、「[サーバー側の暗号化を使用して S3 バケットにアクセスする](create-s3-location.md#create-s3-location-encryption)」を参照してください。
   + `OutputType` - `SUMMARY_ONLY` を指定します。

     詳細については、「[概要のみのタスクレポート](task-reports.md#task-report-types-summary)」を参照してください。

1. `create-task` コマンドを実行してタスクを作成します。

   作成したタスクの ARN を示す次のような応答が返されます。`start-task-execution` コマンドを実行するには、この ARN が必要です。

   ```
   {
       "TaskArn": "arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh"
   }
   ```

1. 次の `start-task-execution` コマンドをコピーします。

   ```
   aws datasync-task-report start-task-execution \
     --task-arn arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh
   ```

1. `--task-arn` パラメータには、開始するタスクの ARN を指定します。`create-task` コマンドを実行して受け取った ARN を使用します。

1. `start-task-execution` コマンドを実行します。

転送が完了すると、[タスクレポートを表示](task-report-viewing.md)できます。

## 標準のタスクレポートの作成
<a name="creating-task-report-standard"></a>

DataSync タスクの作成時、タスクの開始時、またはタスクの更新時に、[標準タスクレポート](task-reports.md#task-report-types-standard)を設定できます。

以下のステップでは、タスクの作成時に標準タスクレポートを設定する方法を示します。

### DataSync コンソールの使用
<a name="ccreating-task-report-console"></a>

1. [https://console.aws.amazon.com/datasync/](https://console.aws.amazon.com/datasync/) で AWS DataSync コンソールを開きます。

1. 左側のナビゲーションペインで **[データ転送]** を展開し、**[タスク]**、**[タスクの作成]** の順に選択します。

1. タスクのソースと送信先の場所を設定します。

   詳細については、[でデータを転送できる場所 AWS DataSync](working-with-locations.md)を参照してください。

1. **[タスクレポート]** セクションまで、下にスクロールします。**[レポートタイプ]** には **[標準レポート]** を選択します。

1. **[レポートレベル]** で、次のいずれかを選択します。
   + **[エラーのみ]** — タスクレポートには、DataSync が転送、スキップ、検証、削除を試みた際の問題のみが含まれます。
   + **[成功とエラー]** — タスクレポートには、DataSync が正常に転送、スキップ、検証、削除したものとされなかったものが含まれます。
   + **[カスタム]** — タスクレポートの特定の部分にエラーのみを表示するか、成功とエラーを表示するかを選択できます。

     たとえば、転送されたファイルリストでは **[成功とエラー]** を選択し、レポートの残りの部分では **[エラーのみ]** を選択できます。

1. オブジェクトバージョニングを使用する S3 バケットに転送する場合、転送された各オブジェクトの新しいバージョンをレポートに含める場合は、**[Amazon S3 オブジェクトバージョンを含める]** を選択したままにします。

1. **[レポート用の S3 バケット]** には、DataSync がタスクレポートをアップロードする S3 バケットを選択します。
**ヒント**  
S3 バケットにデータを転送する予定があり、[**[削除されたファイルを保持する]** オプション](configure-metadata.md)を無効にした場合、同じバケットをタスクレポートに使用しないでください。そうしないと、DataSync はタスクを実行するたびに以前のタスクレポートをすべて削除します。これらのレポートは送信元に存在しないためです。

1. **[フォルダ]** には、DataSync が S3 バケットにレポートをアップロードするときにタスクレポートに使用するプレフィックス (例: **reports/**) を入力します。プレフィックスの末尾には適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ (`/`) です。詳細については、「*Amazon S3 ユーザーガイド*」の「[プレフィックスを使用してオブジェクトを整理する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)」を参照してください。

1. **[IAM role]** (IAM ロール) で、次のいずれかを実行します。
   + **[自動生成する]** を選択すると、DataSync は S3 バケットへのアクセスに必要な権限を持つ IAM ロールを自動的に作成します。

     DataSync が以前にこの S3 バケット用 IAM ロール を作成した場合、そのロールがデフォルトで選択されます。
   + 作成したカスタム IAM ロールを選択します。

     場合によっては、ロールを自分で作成する必要があります。詳細については、「[S3 バケットにタスクレポートをアップロードすることを DataSync に許可する](#task-report-access)」を参照してください。
**重要**  
S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには DataSync がバケットへのアクセスに使用する IAM ロールが含まれている必要があります。  
詳細については、「[サーバー側の暗号化を使用して S3 バケットにアクセスする](create-s3-location.md#create-s3-location-encryption)」を参照してください。

1. タスクの作成を完了し、[タスクを開始](run-task.md)してデータの転送を開始します。

転送が完了すると、[タスクレポートを表示](task-report-viewing.md)できます。

### の使用 AWS CLI
<a name="creating-task-report-cli"></a>

1. 次の `create-task` コマンドをコピーします。

   ```
   aws datasync create-task \
     --source-location-arn arn:aws:datasync:us-east-1:123456789012:location/loc-12345678abcdefgh \
     --destination-location-arn arn:aws:datasync:us-east-1:123456789012:location/loc-abcdefgh12345678 \
     --task-report-config '{
       "Destination":{
         "S3":{
           "Subdirectory":"reports/",
           "S3BucketArn":"arn:aws:s3:::your-task-reports-bucket",
           "BucketAccessRoleArn":"arn:aws:iam::123456789012:role/bucket-iam-role"
           }
       },
       "OutputType":"STANDARD",
       "ReportLevel":"level-of-detail",
       "ObjectVersionIds":"include-or-not"    
     }'
   ```

1. `--source-location-arn` パラメータには、転送元の ARN を指定します。を適切な `us-east-1`に AWS リージョン、 を適切な AWS アカウント 数値`123456789012`に、 を適切なソースロケーション ID `12345678abcdefgh` に置き換えます。

1. `--destination-location-arn` パラメータには、転送の送信先の ARN を指定します。を適切な `us-east-1`に AWS リージョン、 を適切な AWS アカウント 数値`123456789012`に、 を適切な送信先ロケーション ID `abcdefgh12345678` に置き換えます。

1. `--task-report-config` パラメータについては、以下を行います。
   + `Subdirectory` — `reports/` を DataSync がタスクレポートをアップロードする S3 バケットのプレフィックスに置き換えます。プレフィックスの末尾には適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ (`/`) です。詳細については、「*Amazon S3 ユーザーガイド*」の「[プレフィックスを使用してオブジェクトを整理する](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html)」を参照してください。
   + `S3BucketArn` — タスクレポートをアップロードする S3 バケットの ARN を指定します。
**ヒント**  
S3 バケットにデータを転送する予定があり、[**[削除されたファイルを保持する]** オプション](configure-metadata.md)を無効にした場合、同じバケットをタスクレポートに使用しないでください。そうしないと、DataSync はタスクを実行するたびに以前のタスクレポートをすべて削除します。これらのレポートは送信元に存在しないためです。
   + `BucketAccessRoleArn` — DataSync が S3 バケットにタスクレポートをアップロードすることを許可する IAM ロールを指定します。

     詳細については、「[S3 バケットにタスクレポートをアップロードすることを DataSync に許可する](#task-report-access)」を参照してください。
**重要**  
S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには DataSync がバケットへのアクセスに使用する IAM ロールが含まれている必要があります。  
詳細については、「[サーバー側の暗号化を使用して S3 バケットにアクセスする](create-s3-location.md#create-s3-location-encryption)」を参照してください。
   + `OutputType` — `STANDARD` レポートを指定します。

     詳細については、「[標準タスクレポート](task-reports.md#task-report-types-standard)タスクレポートのタイプ」を参照してください。
   + (オプション) `ReportLevel` — `ERRORS_ONLY` (デフォルト) または `SUCCESSES_AND_ERRORS` をレポートに含めるかを指定します。
   + (オプション) `ObjectVersionIds` — オブジェクトバージョニングを使用する S3 バケットに転送する場合、転送された各オブジェクトの新しいバージョンをレポートに含めない場合は `NONE` を指定します。

     このオプションはデフォルトで `INCLUDE` に設定されています。
   + (オプション) `Overrides` — レポートの特定部分の `ReportLevel` をカスタマイズします。

     たとえば、送信先で DataSync が削除する内容のリストで `SUCCESSES_AND_ERRORS` を表示したいが、それ以外では `ERRORS_ONLY` が必要な場合があります。この例では、`--task-report-config` パラメーターに次の `Overrides` オプションを追加します。

     ```
     "Overrides":{
       "Deleted":{
         "ReportLevel":"SUCCESSES_AND_ERRORS"
       }
     }
     ```

     `Overrides` を使用しない場合、指定した `ReportLevel` がレポート全体で使用されます。

1. `create-task` コマンドを実行してタスクを作成します。

   作成したタスクの ARN を示す次のような応答が返されます。`start-task-execution` コマンドを実行するには、この ARN が必要です。

   ```
   {
       "TaskArn": "arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh"
   }
   ```

1. 次の `start-task-execution` コマンドをコピーします。

   ```
   aws datasync-task-report start-task-execution \
     --task-arn arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh
   ```

1. `--task-arn` パラメータには、実行中のタスクの ARN を指定します。`create-task` コマンドを実行して受け取った ARN を使用します。

1. `start-task-execution` コマンドを実行します。

転送が完了すると、[タスクレポートを表示](task-report-viewing.md)できます。