AmazonAWS DataSync によるアクティビティのモニタリング CloudWatch - AWS DataSync

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

AmazonAWS DataSync によるアクティビティのモニタリング CloudWatch

AmazonAWS DataSync を使用してモニタリングすることで CloudWatch、Draw データを収集し、 DataSyncリアルタイムに近い読み込み可能なメトリクスに加工することができます。これらの統計は 15 か月保持されます。

デフォルトでは、 DataSync メトリクスデータは 5 CloudWatch 分間隔で自動的に送信されます。詳細については、「Amazon、 CloudWatch イベント CloudWatch、 CloudWatch ログとは」を参照してください。 Amazon CloudWatch ユーザーガイドに記載されています

の Amazon CloudWatch メトリックスへのアクセス DataSync

Amazon CloudWatch では、 DataSync パフォーマンスに関する情報を取得し、問題をトラブルシューティングするために使用できるメトリクスを提供しています。以下のツールを使用して、 CloudWatch DataSync のメトリクスを表示できます。

  • CloudWatch コンソール

  • CloudWatch CLI

  • CloudWatch API

  • DataSync コンソール (タスク実行ページ)

詳細については、Amazon CloudWatch ユーザーガイドの「Amazon CloudWatch メトリックスの使用」を参照してください。

CloudWatch のメトリクス DataSync

AWS/DataSync 名前空間には、次のメトリクスが含まれます。

メトリクス 説明

BytesCompressed

圧縮適用後にネットワーク経由で転送された物理的なバイト数。ほとんどの場合、この数値は、BytesTransferredデータが圧縮可能でない場合よりも少なくなります。

単位: バイト

BytesPreparedDestination

送信先の場所で準備されたデータの合計バイト数。

単位: バイト

BytesPreparedSource

送信元の場所で準備されたデータの合計バイト数。

単位: バイト

BytesTransferred

転送に含まれる合計バイト数。ネットワーク経由で送信されるバイト数については、を参照してくださいBytesCompressed

単位: バイト

BytesVerifiedDestination

送信先の場所で検証されたデータの合計バイト数。

単位: バイト

BytesVerifiedSource

送信元の場所で検証されたデータの合計バイト数。

単位: バイト

BytesWritten

送信先の場所に転送されたすべてのファイルの合計論理サイズ。

単位: バイト

FilesPreparedDestination

送信先の場所で準備されたファイルの合計数。

単位: [Count] (カウント)

FilesPreparedSource

送信元の場所で準備されたファイルの合計数。

単位: [Count] (カウント)

FilesTransferred

ネットワーク経由で転送された実際のファイル数またはメタデータ。この値は、TRANSFERRINGフェーズ中に継続的に計算および更新されます。これは、各ファイルが送信元の場所から読み取られるごとに定期的に更新され、ネットワーク経由で送信されます。

転送中に障害が発生した場合、この値は EstimatedFilesToTransfer 未満になることがあります。場合によっては、この値は EstimatedFilesTransferred より大きくなることもあります。一部の場所タイプではこの要素が実装固有であるため、正確なファイル数あるいはタスク実行のモニタリングのインジケータとしてはこれを使用しないでください。

単位: [Count] (カウント)

FilesVerifiedDestination

送信先の場所で検証されたファイルの合計数。

単位: [Count] (カウント)

FilesVerifiedSource

送信元の場所で検証されたファイルの合計数。

単位: [Count] (カウント)

DataSync メトリクスのディメンション

DataSync AWS/DataSyncメトリックスは名前空間を使用し、以下のディメンションのメトリクスを提供します:

  • AgentId— エージェントの一意の ID。

  • TaskId— タスクの一意の ID。task-01234567890abcdef の形式です。

EventBridge のアマゾンイベント DataSync

Amazon EventBridge DataSync イベントはリソースの変更を記述します。このようなイベントを一致させるルールを設定して、1 つ以上のターゲット関数またはストリームにルートできます。イベントは、ベストエフォートベースで出力されます。

EventBridge 以下のイベントがご利用いただけます DataSync.

Agent state changes
イベント 説明
Online The agent is configured properly and is available to use. This status is the normal running status for an agent.
Offline The agent's VM is turned off or the agent is in an unhealthy state and has been out of contact with the service for 5 minutes or longer. When the issue that caused the unhealthy state is resolved, the agent returns to ONLINE status.
Location state changes
イベント 説明
Adding DataSync is adding a location.
Available The location is created and is available to use.
Task state changes
イベント 説明
Available The task was created and is ready to start.
Running The task is in progress and functioning properly.
Unavailable The task isn't configured properly and can't be used. You may see this when an agent associated with the task goes offline.
Queued Another task is running and using the same agent. DataSync runs tasks in series (first in, first out).
Task execution state changes
イベント 説明
Queueing DataSync is waiting for another task that's using the same agent to finish.
Launching DataSync is initializing the task execution.
Preparing DataSync is determining which files need to be transferred.
Transferring DataSync is performing the actual transfer of your data.
Verifying DataSync performs a full data and metadata integrity verification to ensure that the data in your destination is an exact copy of your source.
Success The transfer is successful.
Error The transfer failed.

Amazon DataSync CloudWatch ロググループへのログのアップロードを許可する

DataSync CloudWatch ロググループにログを送信するには、十分な権限が必要です。コンソールを使用してタスクを作成する場合は、必要な IAM DataSync ポリシーを自動的に作成できます。詳細については、「AWS DataSyncタスク設定を設定する」を参照してください。

次の例は、これらの権限を付与する信頼ポリシーです

{ "Statement": [ { "Sid": "DataSyncLogsToCloudWatchLogs", "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:CreateLogStream" ], "Principal": { "Service": "datasync.amazonaws.com" }, "Condition": { "ArnLike": { "aws:SourceArn": [ "arn:aws:datasync:region:account-id:task/*" ] }, "StringEquals": { "aws:SourceAccount": "account-id" } }, "Resource": "arn:aws:logs:region:account-id:log-group:*:*" } ], "Version": "2012-10-17" }

ポリシーでは、条件ステートメントを使用して、 DataSync 指定したアカウントからのタスクのみが、 CloudWatch 指定したロググループにアクセスできるようにします。混乱した代理問題から保護するために、これらの条件ステートメントでは、aws:SourceArnaws:SourceAccountおよびグローバル条件コンテキストキーを使用することをお勧めします。詳細については、「サービス間の混乱した代理の防止」を参照してください。

DataSync 単独または複数のタスクを指定するには、タスクの配置されているaccount-idのリージョンコードに置き換え、タスクを含むアカウントのAWS アカウント ID に置き換えます。regionAWS リージョン CloudWatch ロググループを指定するには、同じ値を置き換えます。Resourceステートメントを修正して、特定のロググループをターゲットにすることもできます。SourceArnおよびSourceAccount の使用の詳細については、IAM ユーザーガイド グローバル条件キーを参照してください。

ポリシーを適用するには、このポリシーステートメントをローカルコンピュータ上のファイルに保存します。次に、AWS CLI以下のコマンドを実行してリソースポリシーを適用します:

aws logs put-resource-policy --policy-name trustDataSync --policy-document file://full-path-to-policy-file
注記

このコマンドはAWS アカウント、AWS リージョン DataSyncエージェントをアクティブ化したのと同じコマンドを使用して実行します。

詳細については、Amazon CloudWatch Logs ユーザーガイドの「ロググループとログストリームの操作」を参照してください

DataSync コマンドラインからタスクをモニタリングする

DataSync タスクは、AWS Command Line Interfaceまたは標準の UNIXwatch ユーティリティを使用して追跡できます。

を使用してタスクを監視するAWS CLI

CLI DataSync を使用してタスクのステータスを監視するには、describe-task-executionコマンドを使用します。

aws datasync describe-task-execution \ --task-execution-arn 'arn:aws:datasync:region:account-id:task/task-id/execution/task-execution-id'

このコマンドは、次に示すようなタスク実行に関する情報を返します。

{ "BytesCompressed": 0, "BytesTransferred": 0, "BytesWritten": 0, "EstimatedFilesToTransfer": 0, "EstimatedBytesToTransfer": 0, "FilesTransferred": 0, "Options": { "VerifyMode": "POINT_IN_TIME_CONSISTENT", "Atime": "BEST_EFFORT", "Mtime": "PRESERVE", "Uid": "INT_VALUE", "Gid": "INT_VALUE", "PreserveDevices": "NONE", "PosixPermissions": "PRESERVE", "PreserveDeletedFiles": "PRESERVE", "OverwriteMode": "NEVER", "TaskQueueing": "ENABLED" }, "Result": { "PrepareDuration": 4355, "PrepareStatus": "Ok", "TransferDuration": 5889, "TransferStatus": "Ok", "VerifyDuration": 4538, "VerifyStatus": "Pending" }, "StartTime": 1532658526.949, "Status": "VERIFYING", "TaskExecutionArn": "arn:aws:datasync:us-east-1:112233445566:task/task-08de6e6697796f026/execution/exec-04ce9d516d69bd52f" }

タスクの実行が成功した場合、[ステータス] の値は [SUCCESS (成功)] に変わります。describe-task-execution コマンドが失敗すると、問題のトラブルシューティングに役立つエラーコードが結果から送信されます。エラーコードについては、DataSync APITaskExecutionResultDetail リファレンスのを参照してください。

watchユーティリティを使用してタスクを監視する

コマンドラインからタスクの進行状況をリアルタイムで監視するには、標準の Unixwatch ユーティリティを使用できます。タスク実行時間の値はミリ秒単位で測定されます。

watch DataSync ユーティリティはエイリアスを認識しません。次の例は、CLI を直接呼び出す方法を示しています。

# pass '-n 1' to update every second and '-d' to highlight differences $ watch -n 1 -d \ "aws datasync describe-task-execution --task-execution-arn 'arn:aws:datasync:region:account-id:task/task-id/execution/task execution-id'"