AWS DataSyncタスクレポートによる送金の監視 - AWS DataSync

2023 年 12 月 7 日より、バージョン 1 DataSync のエージェントは廃止されます。 DataSync コンソールの [エージェント] ページをチェックして、影響を受けるエージェントがいないか確認してください。その場合は、データ転送やストレージ検出の中断を避けるため、その前にそれらのエージェントを交換してください。さらにサポートが必要な場合は、お問い合わせくださいAWS Support

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

AWS DataSyncタスクレポートによる送金の監視

タスクレポートにはタスク実行中に転送、スキップ、検証、AWS DataSync削除を試みるすべての内容について、概要レポートと詳細レポートを作成できます。タスクレポートは、データ転送の検証と監査に役立ち、 chain-of-custody ファイルの処理にも役立ちます。何百万ものファイルを移行する場合でも、タスクレポートでは移動に問題がある可能性のある特定のファイルを特定できます。

タスクレポートの詳細レベルはカスタマイズできます。たとえば、転送の概要だけが必要な場合があります。また、転送、スキップ、検証、 DataSync削除を試みたすべての情報を網羅したリストを取得することもできます。

概要のみのタスクレポート

タスクの概要だけのレポートには、以下の詳細が含まれます。

  • AWS アカウントタスクを実行したのがその人です。

  • 送信元と宛先の場所。

  • スキップ、転送、検証、削除されたファイルの総数

  • 転送された総バイト数 (論理バイトと物理バイト)

  • タスクの実行が完了したか、キャンセルされたか、エラーが発生した場合

  • 開始時刻と終了時刻 (転送の合計時間を含む)

  • タスク設定 (帯域幅制限、データ検証、フィルターなど)

標準タスクレポート

標準タスクレポートには、転送の概要と以下の情報が含まれます

転送されたデータ

DataSync タスク中に転送を試みたファイル、オブジェクト、ディレクトリのリスト。転送されたデータを含むレポートには、以下の詳細が含まれます。

  • 転送されたデータのパス。

  • 転送された内容 (コンテンツ、メタデータ、または両方)

  • データタイプ、コンテンツサイズ (オブジェクトとファイルのみ) などを含むメタデータ

  • アイテムが転送された日時

  • オブジェクトバージョン (宛先がバージョニングが有効になっている Amazon S3 バケットの場合)

  • 宛先で何かが上書きされた場合

  • 転送が成功したかどうか。

注記

S3 バケット間でデータを移動すると、移動元の場所に指定したプレフィックスがレポート (または Amazon CloudWatch ログ) に表示されることがあります。これは、そのプレフィックスが移動先の場所にオブジェクトとして存在しない場合でも同様です。( DataSync コンソールでは、このプレフィックスがスキップデータまたは検証済みデータとして表示されることもあります)。

スキップされたデータ

DataSync ソースロケーションで検出されたが、転送を試みなかったファイル、オブジェクト、ディレクトリのリスト。 DataSync データをスキップする理由は、タスクの設定方法など、いくつかの要因によって異なる場合があります。次に例を示します。

  • ソースロケーションに、ターゲットにすでに存在するファイルがあります。転送元のファイルは、前回タスクを実行してから変更されていません。転送するのは変更されたデータのみなので、 DataSync そのファイルはスキップされ、転送されません。

  • 転送元と転送先の場所に存在するオブジェクトが、転送元でも変更されます。タスクを実行すると、 DataSync ターゲット内のこのオブジェクトはスキップされます。これは、タスクによってターゲットのデータが上書きされないためです

  • DataSync ソースロケーションにある読み取り不可のディレクトリをスキップします。

    このようなことが起こり、予期しない事態になった場合は、アクセス権限をチェックして、 DataSync スキップされた内容を読み取れるかどうかを確認してください。

スキップされたデータを含むレポートには、以下の詳細が含まれます。

  • スキップされたデータのパス。

  • アイテムがスキップされた時刻。

  • スキップされた理由

検証済みデータ

DataSync 転送中に整合性を検証しようとしたファイル、オブジェクト、ディレクトリのリスト。検証済みデータを含むレポートには、以下の詳細が含まれます。

  • 検証済みデータのパス。

  • アイテムが検証された日時。

  • 検証に失敗した理由 (ある場合)

  • 送信元と送信先の SHA256 チェックサム (ファイルのみ)

注記

特定のデータがタスクレポートに反映されない場合があります。 DataSync 転送されたデータだけを検証するようにタスクを設定しても、状況によってはディレクトリや転送に失敗したファイルを検証しないことがあります。いずれの場合も、 DataSync レポートには未検証のデータは含まれません。

削除されたデータ

ターゲットの場所にあるデータのうち、ソースにはないデータを削除するようにタスクを設定した場合に削除されたファイル、ディレクトリ、オブジェクトのリスト。削除されたデータを含むレポートには、以下の詳細が含まれます。

  • 削除されたデータのパス。

  • 何かが正常に削除されたかどうか。

  • 何かが削除された日時。

レポートレベル

標準タスクレポートでは、以下のレポートレベルのいずれかを選択できます。

  • エラーのみ

  • 成功とエラー (基本的には転送中に発生したすべてのことが一覧表示されています)

たとえば、 DataSync 転送中に正常にスキップされたファイルと正常にスキップされなかったファイルを確認したい場合があります。 DataSync 正常にスキップされたファイルは、 DataSync 転送先にすでに存在しているために意図的に除外したいファイルかもしれません。ただし、たとえばスキップされたエラーは、 DataSync そのユーザーにファイルを読み取るための適切な権限がないことを示している可能性があります。

タスクレポートの例

タスクレポートの詳細レベルはあなた次第です。以下は、object1.txtという名前の転送されたオブジェクトのレポート例で、次のような設定になっています。

  • レポートタイプ — 標準

  • レポートレベル — 成功とエラー

注記

レポートでは、タイムスタンプ形式に ISO-8601 標準を使用します。時間は UTC で、ナノ秒単位で測定されます。この動作は、他のタスクレポート指標の測定方法とは異なります。たとえばVerifyDurationTransferDurationやなどのタスク実行の詳細はミリ秒単位で測定されます

{ "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" }] }

前提条件

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

タスクレポート用の S3 バケットを作成します。

まだ S3 バケットをお持ちでない場合は、 DataSync タスクレポートをアップロードできる S3 バケットを作成してください。レポートは S3 標準ストレージクラスに保存されます。

このバケットには以下をお勧めします。

S3 DataSync バケットへのタスクレポートのアップロードを許可します。

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

DataSync コンソールでは、ほとんどの場合、タスクレポートをバケットにアップロードする権限が自動的に含まれる IAM ロールを作成できます。この自動生成されたロールは、最小権限の観点からはニーズに合わない場合があることに注意してください。また、バケットがカスタマー管理 AWS Key Management Service (AWS KMS) キー (SSE-KMS) で暗号化されている場合も、このロールは機能しません。このような場合、ロールが少なくとも次のことを行っていれば、ロールを手動で作成できます。

概要のみのタスクレポートの作成

タスクの作成、タスクの開始、 DataSyncまたはタスクの更新時にのみ、概要を含むタスクレポートを設定できます

次の手順は、タスク作成時に概要のみのタスクレポートを設定する方法を示しています。

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

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

  3. タスクの転送元と転送先を設定します。

    詳細については、「データはどこに転送できますかAWS DataSync?」を参照してください。

  4. タスクレポート」セクションまでスクロールします。[レポートタイプ] には [サマリーのみ] を選択します。

  5. レポート用 S3 バケットでは、 DataSync タスクレポートをアップロードする S3 バケットを選択します。

    ヒント

    S3 バケットにデータを転送する予定がある場合は、Keep delete files オプションを無効にしても、同じバケットをタスクレポートに使用しないでください。 DataSync そうしないと、以前のタスクレポートがソースロケーションに存在しないため、タスクを実行するたびにそれらのレポートが削除されます。

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

    プレフィックスの末尾には必ず適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ () です。/詳細については、Amazon S3 ユーザーガイドのプレフィックスを使用したオブジェクトの整理」を参照してください。

  7. [IAM role] (IAM ロール) で、次のいずれかを実行します。

    • [自動生成] を選択すると、S3 バケットへのアクセスに必要な権限を持つ IAM DataSync ロールが自動的に作成されます。

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

    • 作成したカスタム IAM ロールを選択します。

      場合によっては、ロールを自分で作成する必要があります。詳細については、「S3 DataSync バケットへのタスクレポートのアップロードを許可します。」を参照してください。

      重要

      S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには、 DataSync バケットへのアクセスに使用する IAM ロールを含める必要があります。

      詳細については、「サーバー側の暗号化を使用して S3 バケットにアクセスする」を参照してください。

  8. タスクの作成を完了し、タスクを開始してデータの転送を開始します

転送が完了すると、タスクレポートを表示できます

  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" }'
  2. --source-location-arnパラメータには、転送元の場所の Amazon リソースネーム (ARN) を指定します。us-east-1適切な番号に置き換えAWS リージョン、123456789012AWS アカウント適切な番号に置き換え、適切なソースロケーション ID 12345678abcdefgh に置き換えます。

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

  4. --task-report-configパラメータについては、次の操作を行います。

    • Subdirectory— DataSync タスクレポートをアップロードする S3 reports/ バケットのプレフィックスに置き換えます。

      プレフィックスの末尾には必ず適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ () です。/詳細については、Amazon S3 ユーザーガイドのプレフィックスを使用したオブジェクトの整理」を参照してください。

    • S3BucketArn— タスクレポートをアップロードする S3 バケットの ARN を指定します。

      ヒント

      S3 バケットにデータを転送する予定がある場合、Keep delete files オプションを無効にしても、同じバケットをタスクレポートに使用しないでください。 DataSync そうしないと、以前のタスクレポートがソースロケーションに存在しないため、タスクを実行するたびにそれらのレポートが削除されます。

    • BucketAccessRoleArn— S3 DataSync バケットへのタスクレポートのアップロードを許可する IAM ロールを指定します。

      詳細については、「S3 DataSync バケットへのタスクレポートのアップロードを許可します。」を参照してください。

      重要

      S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには、 DataSync バケットへのアクセスに使用する IAM ロールを含める必要があります。

      詳細については、「サーバー側の暗号化を使用して S3 バケットにアクセスする」を参照してください。

    • OutputTypeSUMMARY_ONLY— 指定してください。

      詳細については、「概要のみのタスクレポート」を参照してください。

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

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

    { "TaskArn": "arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh" }
  6. start-task-execution以下のコマンドをコピーします。

    aws datasync-task-report start-task-execution \ --task-arn arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh
  7. --task-arnパラメータには、開始するタスクの ARN を指定します。create-taskコマンドを実行して受け取った ARN を使用してください。

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

転送が完了すると、タスクレポートを表示できます

標準タスクレポートの作成

標準タスクレポートは、タスクの作成時、 DataSync タスクの開始時、またはタスク更新時に設定できます。

次の手順は、タスク作成時に標準タスクレポートを設定する方法を示しています。

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

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

  3. タスクの転送元と転送先を設定します。

    詳細については、「データはどこに転送できますかAWS DataSync?」を参照してください。

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

  5. [レポートレベル] では、次のいずれかを選択します。

    • エラーのみ — タスクレポートには、転送、スキップ、検証、 DataSync 削除を試みた問題のみが含まれます。

    • 成功とエラー — タスクレポートには、転送、スキップ、検証、 DataSync 削除に成功したものとされなかったものが含まれます。

    • カスタム — タスクレポートの特定の部分について、エラーのみを表示するか、成功とエラーを表示するかを選択できます。

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

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

  7. レポート用 S3 バケットでは、 DataSync タスクレポートをアップロードする S3 バケットを選択します。

    ヒント

    S3 バケットにデータを転送する予定がある場合は、Keep delete files オプションを無効にしても、同じバケットをタスクレポートに使用しないでください。 DataSync そうしないと、以前のタスクレポートがソースロケーションに存在しないため、タスクを実行するたびにそれらのレポートが削除されます。

  8. Folder には、レポートを S3 DataSync バケットにアップロードするときにタスクレポートに使用するプレフィックス (例:reports/) を入力します。プレフィックスの末尾には必ず適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ () です。/詳細については、Amazon S3 ユーザーガイドのプレフィックスを使用したオブジェクトの整理」を参照してください。

  9. [IAM role] (IAM ロール) で、次のいずれかを実行します。

    • [自動生成] を選択すると、S3 バケットへのアクセスに必要な権限を持つ IAM DataSync ロールが自動的に作成されます。

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

    • 作成したカスタム IAM ロールを選択します。

      場合によっては、ロールを自分で作成する必要があります。詳細については、「S3 DataSync バケットへのタスクレポートのアップロードを許可します。」を参照してください。

      重要

      S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには、 DataSync バケットへのアクセスに使用する IAM ロールを含める必要があります。

      詳細については、「サーバー側の暗号化を使用して S3 バケットにアクセスする」を参照してください。

  10. タスクの作成を完了し、タスクを開始してデータの転送を開始します

転送が完了すると、タスクレポートを表示できます

  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" }'
  2. --source-location-arnパラメータには、転送のソースロケーションの ARN を指定します。us-east-1適切な番号に置き換えAWS リージョン、123456789012AWS アカウント適切な番号に置き換え、適切なソースロケーション ID 12345678abcdefgh に置き換えます。

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

  4. --task-report-configパラメータについては、次の操作を行います。

    • Subdirectory— DataSync タスクレポートをアップロードする S3 reports/ バケットのプレフィックスに置き換えます。プレフィックスの末尾には必ず適切な区切り文字を含めてください。この文字は通常、フォワードスラッシュ () です。/詳細については、Amazon S3 ユーザーガイドのプレフィックスを使用したオブジェクトの整理」を参照してください。

    • S3BucketArn— タスクレポートをアップロードする S3 バケットの ARN を指定します。

      ヒント

      S3 バケットにデータを転送する予定がある場合、Keep delete files オプションを無効にしても、同じバケットをタスクレポートに使用しないでください。 DataSync そうしないと、以前のタスクレポートがソースロケーションに存在しないため、タスクを実行するたびにそれらのレポートが削除されます。

    • BucketAccessRoleArn— S3 DataSync バケットへのタスクレポートのアップロードを許可する IAM ロールを指定します。

      詳細については、「S3 DataSync バケットへのタスクレポートのアップロードを許可します。」を参照してください。

      重要

      S3 バケットが顧客管理の SSE-KMS キーで暗号化されている場合、キーのポリシーには、 DataSync バケットへのアクセスに使用する IAM ロールを含める必要があります。

      詳細については、「サーバー側の暗号化を使用して S3 バケットにアクセスする」を参照してください。

    • OutputType— レポートを指定してください。STANDARD

      詳細については、「標準タスクレポートタスクレポートの種類」を参照してください。

    • (オプション) ReportLevel — レポートに含めるか ERRORS_ONLY (デフォルト)、SUCCESSES_AND_ERRORSレポートに含めるかを指定します。

    • (オプション) ObjectVersionIds — オブジェクトバージョニングを使用する S3 NONE バケットに転送する場合、転送された各オブジェクトの新しいバージョンをレポートに含めないかどうかを指定します。

      デフォルトでは、INCLUDEこのオプションはに設定されています。

    • (オプション) OverridesReportLevel レポートの特定の側面をカスタマイズします。

      たとえば、SUCCESSES_AND_ERRORS DataSync目的の場所で削除されるもののリストを表示したいが、ERRORS_ONLYそれ以外はすべて表示したい場合があります。この例では、Overrides--task-report-configパラメーターに次のオプションを追加します。

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

      使用しない場合OverridesReportLevel指定したものがレポート全体で使用されます。

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

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

    { "TaskArn": "arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh" }
  6. start-task-execution以下のコマンドをコピーします。

    aws datasync-task-report start-task-execution \ --task-arn arn:aws:datasync:us-east-1:123456789012:task/task-12345678abcdefgh
  7. --task-arnパラメータには、実行中のタスクの ARN を指定します。create-taskコマンドを実行して受け取った ARN を使用してください。

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

転送が完了すると、タスクレポートを表示できます

タスクレポートを表示する

DataSync タスクを実行するたびにタスクレポートが作成されます。タスクが完了すると、関連するタスクレポートが S3 バケットに表示されます。タスクレポートは、タスクとその実行の ID を含むプレフィックスの下に整理されています。

S3 バケット内のタスクレポートを見つけるには、以下の例を参考にしてください。

  • 概要のみのタスクレポートreports-prefix/Summary-Reports/task-id-folder/task-execution-id-folder

  • 標準タスクレポートreports-prefix/Detailed-Reports/task-id-folder/task-execution-id-folder

.jsonタスクレポートは形式が決まっているため、Amazon Athena や Amazon AWS AWS Glue などのサービスを使用してレポートを視覚化できます。 QuickSightタスクレポートの視覚化の詳細については、Storage ブログを参照してください。AWS

制限事項

個々のタスクレポートは 5 MB を超えることはできません。大量のファイルをコピーする場合、タスクレポートは複数のレポートに分割されることがあります。