

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

# DMS AWS タスクのモニタリング
<a name="CHAP_Monitoring"></a>

モニタリングは、 および AWS DMS AWS ソリューションの信頼性、可用性、パフォーマンスを維持する上で重要な部分です。マルチポイント障害が発生した場合は、その障害をより簡単にデバッグできるように、 AWS ソリューションのすべての部分からモニタリングデータを収集する必要があります。 には、 AWS DMS タスクとリソースをモニタリングし、潜在的なインシデントに対応するための複数のツール AWS が用意されています。

**AWS DMS イベントと通知**  
AWS DMS は Amazon Simple Notification Service (Amazon SNS) を使用して、レプリケーションインスタンスの作成や削除など、 AWS DMS イベントが発生したときに通知を提供します。 は、イベントをサブスクライブできるカテゴリに AWS DMS グループ化するため、そのカテゴリのイベントが発生したときに通知を受け取ることができます。たとえば、特定のレプリケーション インスタンスの作成カテゴリにサブスクライブした場合は、レプリケーション インスタンスに影響を与える作成関連のイベントが発生するたびに通知を受け取ります。これらの通知は、E メールメッセージ、テキストメッセージ、HTTP エンドポイントへの呼び出しなど、 AWS リージョンの Amazon SNS でサポートされている任意の形式で使用できます。詳細については、[での Amazon SNS イベントと通知の使用 AWS Database Migration Service](CHAP_Events.md)を参照してください。

**タスクのステータス**  
タスクのステータスを確認し、タスクの統制テーブルをモニタリングすることで、タスクの進行状況を監視できます。タスクステータスは、 AWS DMS タスクとその関連リソースの状態を示します。これによって、作成、開始、実行、停止など、タスクの現在の状態がわかります。また、テーブルの全読み込みが開始または進行中など、タスクが移行中のテーブルの現在の状態や、テーブルで挿入、削除、更新が発生した数などの詳細も含まれます。タスクおよびタスクリソースの条件モニタリングについては、「[タスクのステータス](#CHAP_Tasks.Status)」と「[タスク実行中のテーブルの状態](#CHAP_Tasks.CustomizingTasks.TableState)」をご参照ください。統制テーブルの詳細については、「[制御テーブルタスク設定](CHAP_Tasks.CustomizingTasks.TaskSettings.ControlTable.md)」をご参照ください。

**Amazon CloudWatch アラームとログ**  
Amazon CloudWatch アラームを使用すると、指定した期間について 1 つ以上のタスク メトリクスを監視できます。メトリクスが特定のしきい値を超すと、Amazon SNS トピックに通知が送信されます。CloudWatch アラームは、特定の状態にあるという理由ではアクションを呼び出しません。むしろ、状態が変更され、指定された期間維持されている必要があります。 AWS DMS は、移行プロセス中に CloudWatch を使用してタスク情報をログに記録します。または AWS DMS API を使用して AWS CLI 、タスクログに関する情報を表示できます。での CloudWatch の使用の詳細については AWS DMS、「」を参照してください[Amazon CloudWatch を使用したレプリケーション モニタリングタスク](#CHAP_Monitoring.CloudWatch)。 AWS DMS メトリクスのモニタリングの詳細については、「」を参照してください[AWS Database Migration Service メトリクス](#CHAP_Monitoring.Metrics)。 AWS DMS タスクログの使用の詳細については、「」を参照してください[DMS AWS タスクログの表示と管理](#CHAP_Monitoring.ManagingLogs)。

**Time Travel ログ**  
レプリケーションタスクをログ記録およびデバッグするには、 AWS DMS Time Travel を使用できます。この方法の場合、Amazon S3 を使用してログを保存し、暗号化キーを使用して暗号化します。日時フィルターを使用して S3 ログを取得し、必要に応じてログを表示、ダウンロード、難読化できます。これにより、「時間を遡って」データベースのアクティビティを調査できます。  
Time Travel は、DMS がサポートする PostgreSQL ソースエンドポイントと、DMS がサポートする PostgreSQL と MySQL のターゲットエンドポイントで使用できます。Time Travel は、フルロードタスクと CDC タスクと、CDC のみのタスクでのみ有効にできます。Time Travel を有効にしたり、既存の Time Travel 設定を変更するには、タスクが停止していることを確認する必要があります。  
Time Travel ログの詳細については「[Time Travel タスクの設定](CHAP_Tasks.CustomizingTasks.TaskSettings.TimeTravel.md)」を参照してください。Time Travel ログの使用のベスト プラクティスについては、「[Time Travel を使用したレプリケーションタスクのトラブルシューティング](CHAP_BestPractices.md#CHAP_BestPractices.TimeTravel)」を参照してください。

**AWS CloudTrail ログ**  
AWS DMS は、ユーザー AWS CloudTrail、IAM ロール、または のサービスによって実行されたアクションを記録する AWS サービスである と統合されています AWS DMS。CloudTrail は、コンソールからの呼び出しや API オペレーションへのコード呼び出しを含む、 のすべての AWS DMS API コールを AWS DMS イベント AWS DMS としてキャプチャします。証跡を作成する場合は、イベントを含む Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます AWS DMS。証跡を設定しない場合でも、CloudTrail コンソールの **[イベント履歴]** で最新のイベントを表示できます。CloudTrail によって収集された情報を使用して、リクエストの実行元の IP アドレス AWS DMS、リクエストの実行者、リクエストの実行日時などの詳細を確認できます。詳細については、「[を使用した AWS DMS API コールのログ記録 AWS CloudTrail](#logging-using-cloudtrail)」を参照してください。

**データベースログ**  
タスクエンドポイントのデータベースログを表示、ダウンロード、監視するには AWS マネジメントコンソール、 AWS CLI、または AWS データベースサービスの API を使用します。詳細については、[AWS ドキュメント](https://docs.aws.amazon.com/index.html?nc2=h_ql_doc_do_v)のデータベースサービス用ドキュメントをご参照ください。

詳細については、以下のトピックをご参照ください。

**Topics**
+ [タスクのステータス](#CHAP_Tasks.Status)
+ [タスク実行中のテーブルの状態](#CHAP_Tasks.CustomizingTasks.TableState)
+ [Amazon CloudWatch を使用したレプリケーション モニタリングタスク](#CHAP_Monitoring.CloudWatch)
+ [AWS Database Migration Service メトリクス](#CHAP_Monitoring.Metrics)
+ [DMS AWS タスクログの表示と管理](#CHAP_Monitoring.ManagingLogs)
+ [を使用した AWS DMS API コールのログ記録 AWS CloudTrail](#logging-using-cloudtrail)
+ [AWS DMS コンテキストログ記録](#datarep_Monitoring_ContextLogging)
+ [拡張モニタリングダッシュボード](enhanced-monitoring-dashboard.md)
+ [AWS DMS イベントの表示](CHAP_Monitoring.View.dms.events.md)

## タスクのステータス
<a name="CHAP_Tasks.Status"></a>

タスクのステータスはタスクの状態を提供します。以下の表では、タスクがなる得るステータスを示しています。


| タスクのステータス | 説明 | 
| --- | --- | 
|   **[作成中]**   |  AWS DMS はタスクを作成しています。  | 
|   **Running (実行中)**   |  タスクが指定された移行処理を実行中です。  | 
|   **停止**   |  タスクが停止されました。  | 
|   **停止中**   |  タスクが停止中です。これは通常、タスクでのユーザーによる介入を示します。  | 
|   **削除**   |  タスクが (通常はユーザーによる介入のためリクエストから) 削除中です。  | 
|   **失敗**   |  タスクが失敗しました。詳細については、タスクのログファイルをご参照ください。  | 
|   **[エラー]**   |  エラーが原因でジョブは停止した。タスクのエラーの簡潔な説明は、**[概要]** タブの最後のエラーメッセージセクションに記載されている。  | 
|   **エラーを伴って実行中**   |  タスクがエラーステータスで実行されている。これは通常、タスク内の単一または複数のテーブルを移行できなかったことを示す。タスクは選択ルールに従ってその他のテーブルのロードを続ける。  | 
|   **スタート**   |  タスクがレプリケーション インスタンスに、さらにソースおよびターゲットエンドポイントに接続中です。フィルタと変換を適用中です。  | 
|   **準備完了**   |  タスクの実行準備ができました。このステータスになるのは通常、「creating」状態の後です。  | 
|   **変更**   |  タスクが (通常はユーザーによるタスク設定の変更アクションのため) 変更中です。  | 
|   **[Moving]** (移動)   |  タスクは別のレプリケーション インスタンスに移動中です。レプリケーションは移動が完了するまでは、この状態のままになります。タスクの削除は、移動中にレプリケーション タスクで許可されている唯一のオペレーションです。  | 
|   **[Failed-move]** (失敗した移動)   |  ターゲット レプリケーション インスタンスに十分なストレージ領域がないなど、何らかの理由でタスクの移動が失敗しました。レプリケーション タスクがこの状態になると、スタート、変更、移動、または削除できます。  | 
|   **テスト**   |  このタスクに指定されたデータベース移行は、[StartReplicationTaskAssessmentRun](https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessmentRun.html) オペレーションまたは [StartReplicationTaskAssessment](https://docs.aws.amazon.com/dms/latest/APIReference/API_StartReplicationTaskAssessment.html) オペレーションの実行に応じてテストされている。  | 

タスクのステータスバーで、タスクの進捗状況を予測できます。この予測の正確さはソースデータベースのテーブル統計の正確さによって異なります。テーブル統計が正確であればあるほど、正確に予測できます。予測された列の統計がないテーブルが 1 つだけのタスクでは、どのような種類であっても完了率の予測を提供できません。この場合、タスクのステータスと、ロードされた列の表示を使って、タスクが実際に実行されて進行していることを確認できます。

DMS コンソールの「最終更新」列はテーブルに対して AWS DMS が最後にテーブル統計レコードを更新した時刻を示すのみであることにご注意ください。これはテーブルの最終更新時間を示すものではありません。

DMS コンソールを使用する以外にも、次の例のとおり、[AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/dms/index.html) で `aws dms describe-replication-tasks` コマンドを使用して、タスクのステータスを含む現在のレプリケーションタスクの説明の**出力を取得できます。

```
{
    "ReplicationTasks": [
        {
            "ReplicationTaskIdentifier": "moveit2",
            "SourceEndpointArn": "arn:aws:dms:us-east-1:123456789012:endpoint:6GGI6YPWWGAYUVLKIB732KEVWA",
            "TargetEndpointArn": "arn:aws:dms:us-east-1:123456789012:endpoint:EOM4SFKCZEYHZBFGAGZT3QEC5U",
            "ReplicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:T3OM7OUB5NM2LCVZF7JPGJRNUE",
            "MigrationType": "full-load",
            "TableMappings": ...output omitted... ,
            "ReplicationTaskSettings": ...output omitted... ,
            "Status": "stopped",
            "StopReason": "Stop Reason FULL_LOAD_ONLY_FINISHED",
            "ReplicationTaskCreationDate": 1590524772.505,
            "ReplicationTaskStartDate": 1590619805.212,
            "ReplicationTaskArn": "arn:aws:dms:us-east-1:123456789012:task:K55IUCGBASJS5VHZJIINA45FII",
            "ReplicationTaskStats": {
                "FullLoadProgressPercent": 100,
                "ElapsedTimeMillis": 0,
                "TablesLoaded": 0,
                "TablesLoading": 0,
                "TablesQueued": 0,
                "TablesErrored": 0,
                "FreshStartDate": 1590619811.528,
                "StartDate": 1590619811.528,
                "StopDate": 1590619842.068
            }
        }
    ]
}
```

## タスク実行中のテーブルの状態
<a name="CHAP_Tasks.CustomizingTasks.TableState"></a>

 AWS DMS コンソールは、移行中のテーブルの状態に関する情報を更新します。以下の表では、表示される可能性のある状態値を示しています。

![\[AWS Database Migration Service レプリケーションインスタンス\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/images/datarep-TableState.png)



| State | 説明 | 
| --- | --- | 
|   **テーブルが存在しません**   |  AWS DMS はソースエンドポイントでテーブルを見つけることができません。  | 
|   **ロード前**   |  フルロードプロセスが有効になっていますが、まだ開始されていません。  | 
|   **Full load**   |  全ロードプロセスが進行中です。  | 
|   **テーブル完了**   |  全ロードが完了しました。  | 
|   **テーブル取消**   |  テーブルのロードがキャンセルされました。  | 
|   **テーブルエラー**   |  テーブルのロード時にエラーが発生しました。  | 

## Amazon CloudWatch を使用したレプリケーション モニタリングタスク
<a name="CHAP_Monitoring.CloudWatch"></a>

Amazon CloudWatch のアラームやイベントを使用して移行をより詳細に追跡できます。Amazon CloudWatch の詳細については、[Amazon CloudWatch ユーザーガイド]の「[Amazon CloudWatch、Amazon CloudWatch Events、Amazon CloudWatch Logs とは](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html)」をご参照ください。Amazon CloudWatch の使用には料金が発生することにご注意ください。

レプリケーションタスクで CloudWatch ログが作成されない場合は、「トラブルシューティングガイド」の「[AWS DMS は CloudWatch ログを作成しません](CHAP_Troubleshooting.md#CHAP_Troubleshooting.General.CWL)」を参照してください。

 AWS DMS コンソールには、次に示すように、タスクのステータス、完了率、経過時間、テーブル統計など、各タスクの基本的な CloudWatch 統計が表示されます。レプリケーションタスクを選択して、[**CloudWatch メトリクス**] タブをクリックします。

CloudWatchタスクログ設定を確認して変更するには、**[タスクログ記録の変更]** を選択します。詳細については、「[ロギングタスク設定](CHAP_Tasks.CustomizingTasks.TaskSettings.Logging.md)」を参照してください。

![\[AWS DMS モニタリング\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/images/datarep-monitoring1.png)


 AWS DMS コンソールでは、テーブル統計タブを選択すると、挿入数、削除数、更新数など、各**テーブルのパフォーマンス統計**が表示されます。

![\[AWS DMS モニタリング\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/images/datarep-monitoring3.png)


さらに、**[レプリケーションインスタンス]** ページでレプリケーションインスタンスを選択して、**[CloudWatch メトリクス]** タブをクリックすると、インスタンスのパフォーマンスメトリクスを確認できます。

![\[AWS DMS モニタリング\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/images/datarep-monitoring4.png)


## AWS Database Migration Service メトリクス
<a name="CHAP_Monitoring.Metrics"></a>

AWS DMS は、以下の統計を提供します。
+ **[Host Metrics]** (ホストメトリクス) – Amazon CloudWatch により提供されるレプリケーション ホストのパフォーマンスおよび使用状況の統計。使用可能なメトリクスの完全なリストについては、「[レプリケーションインスタンスのメトリクス](#CHAP_Monitoring.Metrics.CloudWatch)」をご参照ください。
+ **[Replication Task Metrics]** (レプリケーション タスク メトリクス) – 受信した変更とコミットされた変更、レプリケーション ホストとソースおよびターゲットデータベースの間のレイテンシーなど、レプリケーション タスクの統計。使用可能なメトリクスの完全なリストについては、「[レプリケーションタスクのメトリクス](#CHAP_Monitoring.Metrics.Task)」をご参照ください。
+ **[Table Metrics]** (テーブルメトリクス) 挿入、更新、削除、完了した DDL ステートメントの数など、移行が進行中のテーブルの統計。

タスクメトリクスは、レプリケーションホストおよびソースエンドポイントの統計と、レプリケーションホストおよびターゲットエンドポイントの統計に分けられます。**CDCLatencySource** と **CDCLatencyTarget** を使用して、これらの関連する統計を比較することで、タスクのレイテンシーの原因を特定できます。たとえば、**CDCLatencySource** 値が **CDCLatencyTarget** 値とほぼ同じである場合は、まずソース側を確認する必要があります。ただし、**CDCLatencyTarget** が **CDCLatencySource** よりも高い場合は、ターゲット側のレイテンシーを注意して確認する必要があります。

タスクメトリック値は、ソースデータベースにおける現在のアクティビティの影響を受ける可能性があります。たとえば、トランザクションが開始したが、コミットされていない場合、**CDCLatencySource** メトリクスはトランザクションがコミットされるまで大きくなり続けます。

レプリケーションインスタンスの場合、**FreeableMemory** メトリクスには説明が必要です。解放可能なメモリは、実際の使用可能な空きメモリを示しているわけではありません。これは、解放して他の用途に使用できる現在使用中のメモリであり、レプリケーションインスタンスで使用されているバッファとキャッシュの組み合わせです。

**FreeableMemory** メトリクスに実際の使用可能な空きメモリは反映されませんが、**FreeableMemory** および **SwapUsage** メトリクスの組み合わせにより、レプリケーションインスタンスが過負荷になっているかどうかがわかります。

次の状態について、これらの 2 つのメトリクスをモニタリングします。
+ **FreeableMemory** メトリクスが 0 に近づいている。
+ **SwapUsage** メトリクスが増加または変動する。

これらの 2 つの状態のいずれかが表示された場合は、より大きなレプリケーションインスタンスへの移行を検討する必要があります。また、レプリケーションインスタンスで実行中のタスクの数とタイプを減らすことも検討してください。全ロードタスクは、変更をレプリケートするだけのタスクよりも多くのメモリを必要とします。

 AWS DMS 移行タスクの実際のメモリ要件を概算で見積もるには、次のパラメータを使用できます。

**LOB 列**  
移行範囲の各テーブルの LOB 列の平均数

**並列にロードするテーブルの最大数**  
が 1 つのタスクで並行して AWS DMS ロードするテーブルの最大数。  
デフォルト値は 8 です。

**LOB チャンクのサイズ**  
 AWS DMS がターゲットデータベースにデータをレプリケートするために使用する LOB チャンクのサイズをキロバイト単位で指定します。

**フルロード時のレートの確定**  
が並行して転送 AWS DMS できるレコードの最大数。  
デフォルト値は 10,000 です。

**LOB のサイズ**  
個々の LOB のキロバイト単位の最大サイズ

**一括の配列のサイズ**  
エンドポイントドライバーがフェッチまたは処理する行の最大数。この値は、ドライバーの設定によって異なります。  
デフォルト値は 1,000 です。

上記の値を決定したら、次のいずれかの方法を使用して、移行タスクに必要なメモリ量を見積もることができます。これらの方法は、移行タスクの **[LOB 列設定]** で選択したオプションによって異なります。
+  **[完全 LOB モード]** の場合は、次の式を使用します。

  `Required memory = (LOB columns) * (Maximum number of tables to load in parallel) * (LOB chunk size) * (Commit rate during full load)`

  ソーステーブルに平均 2 つの LOB 列があり、LOB チャンクのサイズが 64 KB である例を想定します。`Maximum number of tables to load in parallel` と `Commit rate during full load` のデフォルト値を使用する場合、タスクに必要なメモリの量は、次のとおりです。

  `Required memory = 2 * 8 * 64 * 10,000 = 10,240,000 KB`
**注記**  
**全ロード中のコミットレート**の値を減らすには、 AWS DMS コンソールを開き、**データベース移行タスク**を選択し、タスクを作成または変更します。**[詳細設定]** を展開して、**[フルロード時のレートの確定]** 値を入力します。
+  **[制限付き LOB モード]** の場合は、次の式を使用します。

  `Required memory = (LOB columns) * (Maximum number of tables to load in parallel) * (LOB size) * (Bulk array size)`

  ソーステーブルに平均 2 つの LOB 列があり、個々の LOB の最大サイズが 4,096 KB である例を想定します。`Maximum number of tables to load in parallel` と `Bulk array size` のデフォルト値を使用する場合、タスクに必要なメモリの量は、次のとおりです。

  `Required memory = 2 * 8 * 4,096 * 1,000 = 65,536,000 KB`

 AWS DMS が変換を最適に実行するには、変換が発生したときに CPU が使用可能である必要があります。CPU を過負荷にして十分な CPU リソースがないと、移行が遅くなる可能性があります。特に Oracle から PostgreSQL への移行などの異種移行やレプリケーションを実行する場合、 は CPU を大量に消費 AWS DMS する可能性があります。

### レプリケーションインスタンスのメトリクス
<a name="CHAP_Monitoring.Metrics.CloudWatch"></a>

レプリケーションインスタンスのモニタリングには、次の統計に関する Amazon CloudWatch メトリクスがあります。


|  メトリクス  |  説明  | 
| --- | --- | 
| AvailableMemory (利用可能メモリ) |  スワップなしで新しいアプリケーションの開始に使用可能なメモリ容量の推定。詳細については、[Linux man ページ](https://man7.org/linux/man-pages/man5/proc.5.html) の `/proc/memInfo` セクションに記載されている `MemAvailable` の値をご参照ください。 単位: バイト  | 
| [CPUAllocated](割り当て済み CPU) |  タスクに最大割り当てられた CPU のパーセンテージ (0 は無制限を意味する)。 AWS DMS は、CloudWatch コンソール`ReplicationTaskIdentifier`で `ReplicationInstanceIdentifer`と のディメンションの組み合わせに対してこのメトリクスを生成します。このメトリクスを表示するには、`ReplicationInstanceIdentifier, ReplicationTaskIdentifier` カテゴリを使用する。 単位: パーセント  | 
| CPUUtilization |  割り当てられた vCPU (仮想 CPU) のうち、現在インスタンス上に使用されているものに対する比率。  単位: パーセント   | 
| DiskQueueDepth |  ディスクアクセス待機中未処理の読み取り/書き込みリクエスト) (I/O) の数。  単位: カウント   | 
| FreeStorageSpace |  使用可能なストレージ領域の容量。 単位: バイト  | 
| [FreeMemory](空きメモリ) |  アプリケーションおよびページキャッシュ、カーネル独自のデータ構造で使用できる物理メモリ量。詳細については、[Linux man ページ](https://man7.org/linux/man-pages/man5/proc.5.html) の `/proc/memInfo` セクションに記載されている `MemFree` の値をご参照ください。 単位: バイト  | 
| FreeableMemory |  使用可能な RAM の容量。 単位: バイト  | 
| [MemoryAllocated](割り当てメモリ) |  タスクの最大割り当てメモリ (0 は無制限を意味する)。 AWS DMS は、CloudWatch コンソール`ReplicationTaskIdentifier`で `ReplicationInstanceIdentifer`と のディメンションの組み合わせに対してこのメトリクスを生成します。このメトリクスを表示するには、`ReplicationInstanceIdentifier, ReplicationTaskIdentifier` カテゴリを使用する。 単位: MiB  | 
| WriteIOPS |  1 秒あたりのディスク書き込み I/O オペレーションの平均回数。 単位: カウント/秒  | 
| ReadIOPS |  1 秒あたりのディスク読み取り I/O オペレーションの平均回数。 単位: カウント/秒  | 
| WriteThroughput |  1 秒あたりのディスクへの平均書き込みバイト数。 単位: バイト/秒  | 
| ReadThroughput |  1 秒あたりのディスクからの平均読み取りバイト数。 単位: バイト/秒  | 
| WriteLatency |  1 回のディスク I/O (出力) 操作にかかる平均時間。 単位: ミリ秒  | 
| ReadLatency |  1 回のディスク I/O (入力) 操作にかかる平均時間。 単位: ミリ秒  | 
| SwapUsage |  レプリケーションインスタンスで使用されるスワップ領域の量。 単位: バイト  | 
| NetworkTransmitThroughput | 顧客データベーストラフィックを含むレプリケーションインスタンスの送信 (Transmit) ネットワークトラフィック。単位: バイト/秒 | 
| NetworkReceiveThroughput |  顧客データベーストラフィックを含むレプリケーションインスタンスの受信 (Receive) ネットワークトラフィック。 単位: バイト/秒  | 

### レプリケーションタスクのメトリクス
<a name="CHAP_Monitoring.Metrics.Task"></a>

レプリケーションタスクのモニタリングには、次の統計のメトリクスがあります。


|  メトリクス  |  説明  | 
| --- | --- | 
| FullLoadThroughputBandwidthTarget |  ターゲットに送信される全ロードによるネットワーク帯域幅 (1 秒あたりの KB 数)。  | 
| FullLoadThroughputRowsTarget |  ターゲットに送信される全ロードによる変更 (1 秒あたりの行数)。  | 
| CDCIncomingChanges |  ターゲットへの適用を待機している、特定の時点での変更イベントの合計数。これは、ソースエンドポイントのトランザクション変更レートの測定と同じではありません。通常、このメトリクスの大多数は、 AWS DMS をキャプチャされた変更にタイムリーに適用できず、ターゲットのレイテンシーが高くなっていることを示します。  | 
| CDCChangesMemorySource |  メモリに累積され、ソースからのコミットを待機している行の数。このメトリックは CDCChangesDiskSource とともに表示できます。  | 
| CDCChangesMemoryTarget (CDC変更メモリターゲット) |  メモリに累積され、ターゲットへのコミットを待機している行の数。このメトリックは CDCChangesDiskTarget とともに表示できます。  | 
| CDCChangesDiskSource (CDC変更ディスクソース) |  ディスクに累積され、ソースからのコミットを待機している行の数。このメトリックは CDCChangesMemorySource とともに表示できます。  | 
| CDCChangesDiskTarget (CDC変更ディスクターゲット) |  ディスクに累積され、ターゲットへのコミットを待機している行の数。このメトリックは CDCChangesMemoryTarget とともに表示できます。  | 
| CDCThroughputBandwidthTarget (CDCスループット帯域幅ターゲット) |  ターゲットに送信される送信データ (KB/秒)。CDCThroughputBandwidth は、サンプリングポイントで送信された送信データを記録 ネットワーク トラフィックが見つからない場合、値は 0 です。CDC は長時間実行トランザクションを発行しないため、ネットワークトラフィックは記録されない場合があります。  | 
| CDCThroughputRowsSource (CDCスループット行ソース) |  ソースから受信したタスクの変更 (1 秒あたりの行数)。  | 
| CDCThroughputRowsTarget (CDCスループット行ターゲット) |  ターゲットに送信されるタスクの変更 (1 秒あたりの行数)。  | 
| CDCLatencySource (CDCレイテンシーソース) |  ソース エンドポイントからキャプチャされた最後のイベントと、 AWS DMS インスタンスの現在のシステム タイムスタンプの間の間隔 (秒)。CDCLatencySource は、ソースインスタンスとレプリケーション インスタンス間のレイテンシーを表します。高い CDCLatencySource は、ソースからの変更をキャプチャするプロセスが遅延することを意味します。進行中のレプリケーションのレイテンシーを特定するには、このメトリクスを CDCLatencyTarget とともに表示できます。CDCLatencySource と CDCLatencyTarget の両方が高い場合は、まず CDCLatencySource を調べてください。 ソースとレプリケーションインスタンスの間にレプリケーションの遅延がない場合、CDCSourceLatency は 0 になることがある。レプリケーションタスクがソースのトランザクションログの次のイベントを読み取ろうとし、最後にソースから読み取った時と比較して新しいイベントがない場合にも、CDCSourceLatency がゼロになる可能性がある。このような状況の場合、タスクは CDCSourceLatency を 0 にリセットする。  | 
| CDCLatencyTarget (CDCレイテンシーターゲット) |  ターゲットのコミットを待機中の最初のイベント タイムスタンプと AWS DMS インスタンスの現在のタイムスタンプの間の間隔 (秒)。ターゲットのレイテンシーは、レプリケーションインスタンスのサーバー時間と、ターゲットコンポーネントに転送された最も古い未確定のイベント ID との差。つまり、ターゲットのレイテンシーは、レプリケーションインスタンスと、適用されても TRG エンドポイントがまだ確認していない最も古いイベントとの間のタイムスタンプの差 (99%)。CDCLatencyTarget が高い場合は、ターゲットに変更イベントを適用するプロセスが遅延していることを示します。進行中のレプリケーションのレイテンシーを特定するには、このメトリクスを CDCLatencySource とともに表示できます。CDCLatencyTarget が高くても CDCLatencySource が高くない場合は、次の場合に調査してください。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/CHAP_Monitoring.html)  | 
| CPUUtilization (CPU使用度) |  複数のコアでタスクによって使用されている CPU の割合。タスク CPUUtilizaion のセマンティクスは、レプリケーション CPUUtilization とは少し異なります。1 つの vCPU が完全に使用されている場合は 100% を示しますが、複数の vCPUs が使用されている場合は 100% を超える可能性があります。 単位: パーセント  | 
| SwapUsage |  タスクで使用されるスワップの量。 単位: バイト  | 
| MemoryUsage |  タスクが使用した制御グループ (cgroup) の **memory.usage\$1in\$1bytes**。DMS は cgroup を使用して、メモリや CPU などのシステムリソースの使用を制御する。このメトリクスは、タスクに割り当てられた cgroup 内のタスクのメモリ使用量をメガバイト単位で示す。cgroup の制限は、DMS レプリケーションインスタンスクラスで利用できるリソースに基づいている。**memory.usage\$1in\$1bytes** は、メモリの常駐セット サイズ (RSS)、キャッシュ、スワップコンポーネントで構成される。オペレーティングシステムは、必要に応じてキャッシュメモリを再利用できる。レプリケーションインスタンスメトリクス **AvailableMemory** もモニタリングすることが推奨される。 AWS DMS は、CloudWatch コンソール`ReplicationTaskIdentifier`で `ReplicationInstanceIdentifer`と のディメンションの組み合わせに対してこのメトリクスを生成します。このメトリクスを表示するには、`ReplicationInstanceIdentifier, ReplicationTaskIdentifier` カテゴリを使用する。  | 

## DMS AWS タスクログの表示と管理
<a name="CHAP_Monitoring.ManagingLogs"></a>

Amazon CloudWatch を使用して、 AWS DMS 移行プロセス中にタスク情報をログに記録できます。タスク設定を選択すると、ログ記録が有効になります。詳細については、「[ロギングタスク設定](CHAP_Tasks.CustomizingTasks.TaskSettings.Logging.md)」を参照してください。

実行されたタスクのログを表示するには、以下の手順に従います。

1.  AWS DMS コンソールを開き、ナビゲーションペインから**データベース移行タスク**を選択します。[データベース移行タスク] ダイアログが表示されます。

1. タスクの名前を選択します。[概要の詳細] ダイアログが表示されます。

1. [**移行タスクログ**] セクションを見つけ、[**CloudWatch ログの表示**] を選択します。

さらに、 AWS CLI または AWS DMS API を使用して、タスクログに関する情報を表示できます。これを行うには、 `describe-replication-instance-task-logs` AWS CLI コマンドまたは AWS DMS API アクション を使用します`DescribeReplicationInstanceTaskLogs`。

たとえば、次の AWS CLI コマンドは、タスクログメタデータを JSON 形式で表示します。

```
$ aws dms describe-replication-instance-task-logs \
   --replication-instance-arn arn:aws:dms:us-east-1:237565436:rep:CDSFSFSFFFSSUFCAY
```

コマンドからのレスポンス例を次に示します。

```
{
    "ReplicationInstanceTaskLogs": [
        {
            "ReplicationTaskArn": "arn:aws:dms:us-east-1:237565436:task:MY34U6Z4MSY52GRTIX3O4AY",
            "ReplicationTaskName": "mysql-to-ddb",
            "ReplicationInstanceTaskLogSize": 3726134
        }
    ],
    "ReplicationInstanceArn": "arn:aws:dms:us-east-1:237565436:rep:CDSFSFSFFFSSUFCAY"
}
```

このレスポンスでは、1 つのタスクログ (`mysql-to-ddb`) がレプリケーションインスタンスに関連付けられています。このログのサイズは、3,726,124 バイトです。

`describe-replication-instance-task-logs` により返される情報を使用して、タスクログの問題を診断およびトラブルシューティングできます。たとえば、タスクの詳細なデバッグログを有効にした場合、タスクログはすぐに大きくなるため、レプリケーション インスタンスに使用可能なストレージを消耗し、インスタンスステータスが `storage-full` に変化する可能性があります。タスクログを記述することによって、必要ないタスクログを判断できます。これにより、それらのタスクログを削除してストレージ領域を解放できます。

タスクのタスクログを削除するには、タスク設定 `DeleteTaskLogs` を true に設定します。たとえば、次の JSON は、 コマンドまたは AWS DMS API `ModifyReplicationTask`アクションを使用して AWS CLI `modify-replication-task`タスクを変更するときにタスクログを削除します。

```
{
   "Logging": {
       "DeleteTaskLogs":true
   }
}
```

**注記**  
レプリケーションインスタンスごとに、 は 10 日以上経過したログ AWS DMS を削除します。

## を使用した AWS DMS API コールのログ記録 AWS CloudTrail
<a name="logging-using-cloudtrail"></a>

AWS DMS は、ユーザー AWS CloudTrail、ロール、または のサービスによって実行されたアクションを記録する AWS サービスである と統合されています AWS DMS。CloudTrail は、 AWS DMS コンソールからの呼び出しや API オペレーションへのコード呼び出しを含む、 のすべての AWS DMS API コールをイベント AWS DMS としてキャプチャします。証跡を作成する場合は、イベントを含む Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます AWS DMS。証跡を設定しない場合でも、CloudTrail コンソールの **[イベント履歴]** で最新のイベントを表示できます。CloudTrail によって収集された情報を使用して、リクエストの実行元の IP アドレス AWS DMS、リクエストの実行者、リクエストの実行日時などの詳細を確認できます。

CloudTrail の詳細については、「[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)」を参照してください。

### AWS DMS CloudTrail の情報
<a name="service-name-info-in-cloudtrail"></a>

CloudTrail は、 AWS アカウントの作成時にアカウントで有効になります。でアクティビティが発生すると AWS DMS、そのアクティビティはイベント**履歴**の他の AWS サービスイベントとともに CloudTrail イベントに記録されます。 AWS アカウントで最近のイベントを表示、検索、ダウンロードできます。詳細については、「[CloudTrail Event 履歴でのイベントの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)」を参照してください。

のイベントなど、 AWS アカウント内のイベントの継続的な記録については AWS DMS、証跡を作成します。証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成すると、証跡はすべての AWS リージョンに適用されます。証跡は、 AWS パーティション内のすべての AWS リージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをさらに分析して処理するように他の AWS サービスを設定できます。詳細については、以下を参照してください。
+ [証跡を作成するための概要](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail がサポートされているサービスと統合](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ 「[CloudTrail の Amazon SNS 通知の設定](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html)」
+ [複数の AWS リージョンからの CloudTrail ログファイルの受信](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)と[複数のアカウントからの CloudTrail ログファイルの受信](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

すべての AWS DMS アクションは CloudTrail によってログに記録され、 [AWS Database Migration Service API リファレンス](https://docs.aws.amazon.com/dms/latest/APIReference/)に記載されています。例えば、`CreateReplicationInstance`、`TestConnection`、`StartReplicationTask` の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。

各イベントまたはログエントリには、誰がリクエストを生成したかという情報が含まれます。同一性情報は次の判断に役立ちます。
+ リクエストが、ルートと IAM ユーザー認証情報のどちらを使用して送信されたか。
+ リクエストがロールまたはフェデレーションユーザーの一時的なセキュリティ認証情報を使用して行われたかどうか。
+ リクエストが別の AWS サービスによって行われたかどうか。

詳細については、「[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)」を参照してください。

### AWS DMS ログファイルエントリについて
<a name="understanding-service-name-entries"></a>

「トレイル」は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベントはあらゆるソースからの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストのパラメータなどの情報が含まれます。CloudTrail ログファイルは、パブリック API コールの順序付けられたスタックトレースではないため、特定の順序では表示されません。

次は、`RebootReplicationInstance` アクションを示す CloudTrail ログエントリの例です。

```
    {
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAIOSFODNN7EXAMPLE:johndoe",
        "arn": "arn:aws:sts::123456789012:assumed-role/admin/johndoe",
        "accountId": "123456789012",
        "accessKeyId": "ASIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2018-08-01T16:42:09Z"
            },
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAIOSFODNN7EXAMPLE",
                "arn": "arn:aws:iam::123456789012:role/admin",
                "accountId": "123456789012",
                "userName": "admin"
            }
        }
    },
    "eventTime": "2018-08-02T00:11:44Z",
    "eventSource": "dms.amazonaws.com",
    "eventName": "RebootReplicationInstance",
    "awsRegion": "us-east-1",
    "sourceIPAddress": "72.21.198.64",
    "userAgent": "console.amazonaws.com",
    "requestParameters": {
        "forceFailover": false,
        "replicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:EX4MBJ2NMRDL3BMAYJOXUGYPUE"
    },
    "responseElements": {
        "replicationInstance": {
            "replicationInstanceIdentifier": "replication-instance-1",
            "replicationInstanceStatus": "rebooting",
            "allocatedStorage": 50,
            "replicationInstancePrivateIpAddresses": [
                "172.31.20.204"
            ],
            "instanceCreateTime": "Aug 1, 2018 11:56:21 PM",
            "autoMinorVersionUpgrade": true,
            "engineVersion": "2.4.3",
            "publiclyAccessible": true,
            "replicationInstanceClass": "dms.t2.medium",
            "availabilityZone": "us-east-1b",
            "kmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/f7bc0f8e-1a3a-4ace-9faa-e8494fa3921a",
            "replicationSubnetGroup": {
                "vpcId": "vpc-1f6a9c6a",
                "subnetGroupStatus": "Complete",
                "replicationSubnetGroupArn": "arn:aws:dms:us-east-1:123456789012:subgrp:EDHRVRBAAAPONQAIYWP4NUW22M",
                "subnets": [
                    {
                        "subnetIdentifier": "subnet-cbfff283",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1b"
                        },
                        "subnetStatus": "Active"
                    },
                    {
                        "subnetIdentifier": "subnet-d7c825e8",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1e"
                        },
                        "subnetStatus": "Active"
                    },
                    {
                        "subnetIdentifier": "subnet-6746046b",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1f"
                        },
                        "subnetStatus": "Active"
                    },
                    {
                        "subnetIdentifier": "subnet-bac383e0",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1c"
                        },
                        "subnetStatus": "Active"
                    },
                    {
                        "subnetIdentifier": "subnet-42599426",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1d"
                        },
                        "subnetStatus": "Active"
                    },
                    {
                        "subnetIdentifier": "subnet-da327bf6",
                        "subnetAvailabilityZone": {
                            "name": "us-east-1a"
                        },
                        "subnetStatus": "Active"
                    }
                ],
                "replicationSubnetGroupIdentifier": "default-vpc-1f6a9c6a",
                "replicationSubnetGroupDescription": "default group created by console for vpc id vpc-1f6a9c6a"
            },
            "replicationInstanceEniId": "eni-0d6db8c7137cb9844",
            "vpcSecurityGroups": [
                {
                    "vpcSecurityGroupId": "sg-f839b688",
                    "status": "active"
                }
            ],
            "pendingModifiedValues": {},
            "replicationInstancePublicIpAddresses": [
                "18.211.48.119"
            ],
            "replicationInstancePublicIpAddress": "18.211.48.119",
            "preferredMaintenanceWindow": "fri:22:44-fri:23:14",
            "replicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:EX4MBJ2NMRDL3BMAYJOXUGYPUE",
            "replicationInstanceEniIds": [
                "eni-0d6db8c7137cb9844"
            ],
            "multiAZ": false,
            "replicationInstancePrivateIpAddress": "172.31.20.204",
            "patchingPrecedence": 0
        }
    },
    "requestID": "a3c83c11-95e8-11e8-9d08-4b8f2b45bfd5",
    "eventID": "b3c4adb1-e34b-4744-bdeb-35528062a541",
    "eventType": "AwsApiCall",
    "recipientAccountId": "123456789012"
}
```

## AWS DMS コンテキストログ記録
<a name="datarep_Monitoring_ContextLogging"></a>

AWS DMS はコンテキストログ記録を使用して、進行中の移行に関する情報を提供します。コンテキストのログ記録がタスクの CloudWatch ログに書き込む情報は次のとおりです。
+ ソースデータベースとターゲットデータベースへのタスクの接続に関する情報
+ レプリケーションタスクの動作。このタスクログを使用して、レプリケーションの問題を診断できます。
+ ソースデータベースとターゲットデータベースで AWS DMS 実行されるデータのない SQL ステートメント。この SQL ログを使用して、予期しない移行の動作を診断できます。
+ 各 CDC イベントのストリーム位置の詳細

コンテキストログ記録は、 AWS DMS バージョン 3.5.0 以降でのみ使用できます。

AWS DMS はデフォルトでコンテキストログ記録を有効にします。コンテキストのログ記録を制御するには、`EnableLogContext` タスク設定を `true` または `false` に設定するか、コンソールでタスクを変更します。

AWS DMS は、コンテキストログ情報を CloudWatch ログのレプリケーションタスクに 3 分ごとに書き込みます。レプリケーションインスタンスにアプリケーションログのための十分なスペースがあることを確認します。タスクログの管理の詳細については、「[DMS AWS タスクログの表示と管理](#CHAP_Monitoring.ManagingLogs)」を参照してください。

**Topics**
+ [オブジェクトタイプ](#datarep_Monitoring_ContextLogging_objects)
+ [ログ記録の例](#datarep_Monitoring_ContextLogging_examples)
+ [制限事項](#datarep_Monitoring_ContextLogging_limitations)

### オブジェクトタイプ
<a name="datarep_Monitoring_ContextLogging_objects"></a>

AWS DMS は、以下のオブジェクトタイプのコンテキストログを CloudWatch で生成します。


| オブジェクトタイプ | 説明 | 
| --- | --- | 
| TABLE\$1NAME | このログエントリには、現在のタスクマッピング ルールの範囲内にあるテーブルに関する情報が含まれている。このようなエントリを使用して、移行中の特定の期間のテーブルイベントを調べることができる。 | 
| SCHEMA\$1NAME | このログエントリには、現在のタスクマッピング ルールで使用されるスキーマに関する情報が含まれている。これらのエントリを使用して、移行中に特定の期間にどのスキーマ AWS DMS を使用しているかを判断できます。 | 
| TRANSACTION\$1ID | このログエントリには、ソースデータベースからキャプチャされた各 DML/DDL 変更のトランザクション ID が含まれている。このようなエントリを使用して、特定のトランザクション中にどのような変更が発生したかを判断できる。 | 
| CONNECTION\$1ID | このエントリには接続 ID が含まれる。これらのログエントリを使用して、移行ステップごとに AWS DMS が使用する接続を決定できます。 | 
| STATEMENT | このエントリには、各移行変更をフェッチ、処理、適用するために使用される SQL コードが含まれている。 | 
| STREAM\$1POSITION | このエントリには、ソースデータベースの各移行アクションのトランザクションログファイル内の位置が含まれる。このエントリの形式は、ソースデータベースエンジンタイプによって異なる。このような情報を使用して、CDC のみのレプリケーションを設定する際に復旧チェックポイントの開始位置を決定することもできる。 | 

### ログ記録の例
<a name="datarep_Monitoring_ContextLogging_examples"></a>

このセクションでは、レプリケーションのモニタリングとレプリケーションの問題の診断に使用できるログレコードの例を説明します。

#### 接続ログの例
<a name="datarep_Monitoring_ContextLogging_examples_connection"></a>

このセクションでは、接続 ID を含むログのサンプルを記載しています。

```
2023-02-22T10:09:29 [SOURCE_CAPTURE  ]I:  Capture record 1 to internal queue from Source  {operation:START_REGULAR (43), connectionId:27598, streamPosition:0000124A/6800A778.NOW}  (streamcomponent.c:2920)
            
2023-02-22T10:12:30 [SOURCE_CAPTURE  ]I:  Capture record 0 to internal queue from Source  {operation:IDLE (51), connectionId:27598}  (streamcomponent.c:2920)

2023-02-22T11:25:27 [SOURCE_CAPTURE  ]I:  Capture record 0 to internal queue from Source  {operation:IDLE (51), columnName:region, connectionId:27598}  (streamcomponent.c:2920)
```

#### タスク動作ログの例
<a name="datarep_Monitoring_ContextLogging_examples_behavior"></a>

このセクションでは、レプリケーションタスクログの動作に関するログのサンプルを記載しています。このような情報を使用して、`IDLE` ステータスのタスクなど、レプリケーションの問題を診断できます。

次の `SOURCE_CAPTURE` ログは、ソースデータベースのログファイルから読み取ることができるイベントがないことを示しており、ターゲットデータベースに適用する AWS DMS CDC コンポーネントから受信したイベントがないことを示す `TARGET_APPLY` レコードが含まれています。上記のイベントには、以前に適用したイベント関連のコンテキストの詳細も含まれています。

```
2023-02-22T11:23:24 [SOURCE_CAPTURE  ]I:  No Event fetched from wal log  (postgres_endpoint_wal_engine.c:1369)
2023-02-22T11:24:29 [TARGET_APPLY    ]I:  No records received to load or apply on target , waiting for data from upstream. The last context is  {operation:INSERT (1), tableName:sales_11, schemaName:public, txnId:18662441, connectionId:17855, statement:INSERT INTO "public"."sales_11"("sales_no","dept_name","sale_amount","sale_date","region") values (?,?,?,?,?),
```

#### SQL ステートメントログの例
<a name="datarep_Monitoring_ContextLogging_examples_sql"></a>

このセクションでは、ソースデータベースとターゲットデータベースで実行される SQL ステートメントに関するログサンプルを記載しています。ログに表示される SQL ステートメントには SQL ステートメントのみが表示され、データは表示されません。次の `TARGET_APPLY` ログは、ターゲット上で実行された `INSERT` ステートメントを示しています。

```
2023-02-22T11:26:07 [TARGET_APPLY    ]I:  Applied record 2193305 to target  {operation:INSERT (1), tableName:sales_111, schemaName:public, txnId:18761543, connectionId:17855, statement:INSERT INTO "public"."sales_111"("sales_no","dept_name","sale_amount","sale_date","region") values (?,?,?,?,?), 
```

### 制限事項
<a name="datarep_Monitoring_ContextLogging_limitations"></a>

 AWS DMS コンテキストのログ記録には、次の制限が適用されます。
+ はすべてのエンドポイントタイプに対して最小限のログ記録 AWS DMS を作成しますが、広範なエンジン固有のコンテキストログ記録は、次のエンドポイントタイプでのみ使用できます。このようなエンドポイントタイプを使用する場合は、コンテキストのログ記録を有効にすることをお勧めします。
  + MySQL
  + [PostgreSQL]
  + Oracle
  + Microsoft SQL Server
  + MongoDB と Amazon DocumentDB
  + Amazon S3

# 拡張モニタリングダッシュボード
<a name="enhanced-monitoring-dashboard"></a>

拡張モニタリングダッシュボードは、モニタリングタスクとレプリケーションインスタンスに関連する重要なメトリクスを包括的に可視化します。これにより、追跡する特定のリソースのメトリクスをフィルタリング、集約、可視化できます。ダッシュボードは既存の CloudWatch メトリクスを直接公開するため、データポイントのサンプリング時間を変更することなくリソースのパフォーマンスをモニタリングできます。

**Topics**
+ [拡張モニタリングダッシュボードの概要](#overview-enhanced-monitoring-dashboard)
+ [拡張モニタリングダッシュボードでメトリクスを表示する](#access-enhanced-monitoring-dashboard)
+ [拡張モニタリングダッシュボードのビュー](#enhanced-monitoring-dashboard-views)
+ [拡張モニタリングのメトリクスの保持](#retention-enhanced-monitoring-metrics)

## 拡張モニタリングダッシュボードの概要
<a name="overview-enhanced-monitoring-dashboard"></a>

拡張モニタリングダッシュボードは、AWS DMS コンソールで使用できます。直感的な視覚化とグラフを備えたユーザーが使いやすいインターフェイスを提供し、データ移行プロセスを効果的にモニタリング、分析、最適化できます。拡張モニタリングを使用すると、モニタリングプロセスを効率化し、関連するすべての情報を一元的に表示することで、潜在的な問題をすばやく特定できます。

拡張モニタリングダッシュボードで、タスクとレプリケーションインスタンスのメトリクスとエンドポイントの詳細を表示できます。アクティブな CloudWatch アラームの数と、現在のリージョンのサービスヘルスのステータスを追跡することもできます。ダッシュボードは、AWS DMS が利用可能なすべての商用リージョンで利用できます。このダッシュボードを使用するために、追加料金はかかりません。

**注記**  
拡張モニタリングダッシュボードは、AWS DMS サーバーレスレプリケーションをサポートしていません。

## 拡張モニタリングダッシュボードでメトリクスを表示する
<a name="access-enhanced-monitoring-dashboard"></a>

拡張モニタリングダッシュボードでメトリクスを表示するには、CloudWatch のアクセス許可を持つ IAM ロールがあることを確認してください。さらに、メトリクスを表示するには `cloudwatch:DescribeAlarms` および `health:DescribeEvents` のアクセス許可が必要です。最後に、拡張モニタリングダッシュボードで CloudWatch メトリクスにアクセスするには、IAM ポリシー内の [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html) API にアクセスするアクセス許可も必要です。これらのアクセス許可、または API のサブセットのみのアクセス許可がない場合、拡張モニタリングダッシュボードにメトリクスを表示することはできません。必要な IAM アクセス許可の詳細については、「[を使用するために必要な IAM アクセス許可 AWS DMS](security-iam.md#CHAP_Security.IAMPermissions)」を参照してください。

## 拡張モニタリングダッシュボードのビュー
<a name="enhanced-monitoring-dashboard-views"></a>

AWS DMS 拡張モニタリングダッシュボードには、タスクビューとレプリケーションインスタンスビューの 2 種類のビューがあります。

### タスクビュー
<a name="enhanced-monitoring-dashboard-tasks-view"></a>

AWS DMS の拡張ダッシュボードの **[タスク]** ビューには、データ移行タスクの包括的な概要が表示されます。このビューは、直感的なグラフと視覚化によりタスクのさまざまな側面をモニタリングおよび分析できる一元的な場所を表示します。

**[タスク]** ビューは、移行タスクに関連する主要なメトリクスと統計に関するインサイトを提供します。これにより、パフォーマンス、進行状況、全体の状態をよく理解できます。**[タスク]** ビューの主な特徴と利点の一部を以下に示します。
+ **タスクのステータスの概要:** このグラフには、実行、停止、失敗、完了など、さまざまなステータスのカテゴリ間のタスクの分散が表示されます。注意が必要なタスクをすばやく特定し、適切なアクションを実行できます。
+ **パフォーマンスメトリクス**: これらのグラフには、スループット、レイテンシー、CPU 使用率などのメトリクスを含むタスクのパフォーマンスを表示されます。これらのメトリクスは、潜在的なボトルネックを特定し、移行プロセスを最適化するのに役立ちます。
+ **エラー分析**: タスクの失敗やエラーが発生した場合、**[タスク]** ビューには、発生したエラーと関連付けられたログエントリに関する詳細情報が表示されます。この情報は、より効率的にトラブルシューティングや問題の解決を行うのに役立ちます。
+ **履歴の傾向**: ダッシュボードには履歴データが組み込まれているため、一定期間のタスクのパフォーマンスを分析できます。これら履歴の傾向に基づいて、パターンの特定、進行状況の追跡、意思決定を行うことができます。
+ **フィルタリングとソート**: **[タスク]** ビューでは、タスク名、タグ、特定の時間範囲など、さまざまな条件に基づいてタスクをフィルタリングおよびソートできます。この柔軟性により、ニーズに最も関連したタスクや側面に焦点を合わせることができます。

次のリストで、**[タスク]** ビューに表示されるメトリクスについて説明します。
+ **フルロードスループットの帯域幅 - ソース**: ソースからフルロードにより送信された受信データを KB/秒で表します。
+ **フルロードスループットの帯域幅 - ターゲット**: ターゲットにフルロードにより送信した送信データを KB/秒で表します。
+ **フルロードスループットの行 - ソース**: ターゲットからフルロードにより受信した変更を 1 秒あたりの行数で表します。
+ **フルロードスループットの行 - ターゲット**: ターゲットにフルロードにより送信した変更を 1 秒あたりの行数で表します。
+ **CDC スループットの帯域幅 - ソース**: ソースのネットワーク帯域幅を KB/秒で表します。

  CDC スループットの帯域幅は、サンプリングポイントで帯域幅を記録します。ネットワークトラフィックが見つからない場合、値は 0 です。CDC は長時間実行トランザクションを発行しないため、ネットワークトラフィックは記録されない場合があります。
+ **CDC スループットの帯域幅 - ターゲット**: ターゲットのネットワーク帯域幅を KB/秒で表します。

  CDC スループットの帯域幅は、サンプリングポイントで帯域幅を記録します。ネットワークトラフィックが見つからない場合、値は 0 です。CDC は長時間実行トランザクションを発行しないため、ネットワークトラフィックは記録されない場合があります。
+ **CDC スループットの行 - ソース**: ソースからの受信タスクの変更を 1 秒あたりの行数で表します。
+ **CDC スループットの行 - ターゲット **: ターゲットの送信タスクの変更を 1 秒あたりの行数で表します。
+ **CDC レイテンシー – ソース**: ソース エンドポイントからキャプチャされた最後のイベントと、AWS DMS インスタンスの現在のシステム タイムスタンプの間の間隔 (秒) を表します。タスクの絞り込みによりソースから変更がキャプチャされない場合、AWS DMS はこの値をゼロに設定します。
+ **CDC レイテンシー – ターゲット**: ターゲットのコミットを待機中の最初のイベント タイムスタンプと AWS DMS インスタンスの現在のタイムスタンプの間の間隔 (秒) を表します。この値は、ターゲットによって処理されていないトランザクションがある場合に発生します。それ以外の場合、すべてのトランザクションが適用されると、ターゲットレイテンシーはソースレイテンシーと同じになります。ターゲットレイテンシーをソースレイテンシーより小さくすることはできません。
+ **CPU 使用率**: 複数のコアでタスクによって使用されている CPU の割合を表します。タスク `CPUUtilization` のセマンティクスは、レプリケーションインスタンス `CPUUtilizaiton` のセマンティクスとは少し異なります。1 つの vCPU が完全に使用されている場合は 100% を示しますが、複数の vCPU が使用されている場合は 100% を超える可能性があります。
+ **メモリ使用量:**: タスクによって消費されるコントロールグループ (cgroup) `memory.usage_in_bytes` を表します。AWS DMS は cgroup を使用して、メモリや CPU などのシステムリソースの使用を制御します。このメトリクスは、タスクに割り当てられた cgroup 内のタスクのメモリ使用量をメガバイト単位で示す。

  cgroup の制限は、AWS DMS レプリケーションインスタンスクラスで利用できるリソースに基づいています。`memory.usage_in_bytes` は、メモリの常駐セット サイズ (RSS)、キャッシュ、スワップコンポーネントで構成されています。オペレーティングシステムは、必要に応じてキャッシュメモリを再利用できる。レプリケーションインスタンスメトリクス AvailableMemory もモニタリングすることが推奨される。

  AWS DMS は、CloudWatch コンソールの `ReplicationInstanceIdentifer` と `ReplicationTaskIdentifier` を使用する。このメトリクスを表示するには、`ReplicationInstanceIdentifier`、`ReplicationTaskIdentifier` カテゴリを使用する。
+ **検証レコード数**: このグラフは、AWS DMS タスクに対して検証が有効になっている場合にのみ表示されます。これは AWS DMS タスクで使用可能な検証メトリクスの組み合わせで、以下が含まれます。
  + `ValidationSucceededRecordCount` - AWS DMS が検証した 1 分あたりの行数。
  + `ValidationAttemptedRecordCount` - 検証が試行された行の 1 分あたりの数。
  + `ValidationFailedOverallCount` - 検証が失敗した行の数。
  + `ValidationSuspendedOverallCount` - 検証が停止された行の数。
  + `ValidationPendingOverallCount` - 検証がまだ保留中の行の数。

前述のメトリクスに加えて、**[タスク]** ビューをカスタマイズし、ウィジェットとして追加することで、追加のメトリクスを含めることができます。これらのメトリクスの詳細については、次のドキュメントを確認することをお勧めします。
+ 移行とレプリケーションの AWS DMS タスクに使用できるすべてのメトリクスについては、「[DMS AWS タスクのモニタリング](CHAP_Monitoring.md)」を参照してください。
+ メトリクスに関連し、使用可能なすべての検証については、「[データ検証](CHAP_Validating.md)」を参照してください。

### レプリケーションインスタンスビュー
<a name="enhanced-monitoring-dashboard-rep-instance-view"></a>

**[レプリケーションインスタンス]** ビューには、レプリケーションインスタンスの包括的な概要が表示され、データレプリケーションインフラストラクチャを効果的にモニタリングおよび管理できます。このビューは、直感的なグラフと視覚化によりレプリケーションインスタンスのさまざまな側面を分析できる一元的な場所を表示します。

**[レプリケーションインスタンス]** ビューは、レプリケーションインスタンスに関連する主要なメトリクスと統計に関するインサイトを提供します。これにより、パフォーマンス、リソース使用率、全体の状態をよく理解できます。**[レプリケーションインスタンス]** ビューの主な特徴と利点の一部を以下に示します。
+ **インスタンスステータスの概要**: このグラフには、アベイラビリティーゾーン、インスタンスクラス、エンジンバージョン、割り当てられたストレージ、現在のヘルスステータスなど、選択したレプリケーションインスタンスの詳細が表示されます。
+ **リソース使用率**: ダッシュボードには、CPU、メモリ、ディスク使用量などのメトリクスを含む、レプリケーションインスタンスのリソース使用率を示すグラフが表示されます。これらのメトリクスは、潜在的なリソースの制約を特定し、レプリケーションインフラストラクチャを最適化するのに役立ちます。
+ **履歴の傾向**: ダッシュボードには履歴データが組み込まれているため、一定期間のレプリケーションインスタンスのパフォーマンスを分析できます。これら履歴の傾向に基づいて、パターンの特定、変更の追跡、意思決定を行うことができます。
+ **フィルタリングとソート**: **[レプリケーションインスタンス]** ビューでは、インスタンス、特定の時間範囲など、さまざまな条件に基づいてレプリケーションインスタンスをフィルタリングおよびソートできます。この柔軟性により、ニーズに最も関連したインスタンスや側面に焦点を合わせることができます。

次のリストで、**[レプリケーションインスタンス]** ビューに表示されるメトリクスについて説明します。
+ **CloudWatch アラーム**: AWS/DMS 名前空間のアラームの概要を表します。
+ **CPU 使用率**: 複数のコアでタスクによって使用されている CPU の割合を表します。タスク `CPUUtilization` のセマンティクスは、レプリケーション `CPUUtilizaiton` のセマンティクスとは少し異なります。1 つの vCPU が完全に使用されている場合は 100% を示しますが、複数の vCPU が使用されている場合は 100% を超える可能性があります。
+ **インスタンスあたりのタスク別のメモリ使用量**: タスクによって占有される常駐セットサイズ (RSS) を表します。メインメモリ (RAM) に保持されているタスクによって占有されているメモリの部分を示します。占有されているメモリの部分はページアウトされないため、または実行可能ファイルの部分がロードされることがないため、`MemoryUsage` には、スワップ領域またはファイルシステムに保持されているメモリは含まれません。
+ **メモリ**: 使用可能なメモリ、使用中のメモリ、または解放可能なメモリ、および使用されるスワップ領域の量を表します。
+ **使用可能なメモリ**: スワップなしで新しいアプリケーションの開始に使用可能なメモリ容量の推定を表します。
+ **空きメモリ**: アプリケーションおよびページキャッシュ、カーネル独自のデータ構造で使用できる物理メモリ量を表します。
+ **解放可能なメモリ**: 解放可能なメモリは、実際の使用可能な空きメモリを示しているわけではありません。現在使用中のメモリで、解放して他の用途に使用できます。これは、レプリケーションで使用されているバッファとキャッシュの組み合わせです。
+ **スワップの使用量**: レプリケーションインスタンスで使用されているスワップ領域の量を表します。
+ **空きストレージ**: 使用可能なストレージ容量をバイト単位で表します。

前述のメトリクスに加えて、**[レプリケーションインスタンス]** ビューをカスタマイズし、ウィジェットとして追加することで、追加のメトリクスを含めることができます。これらのメトリクスの詳細については、次のドキュメントを確認することをお勧めします。
+ 移行とレプリケーションの AWS DMS タスクに使用できるすべてのメトリクスについては、「[DMS AWS タスクのモニタリング](CHAP_Monitoring.md)」を参照してください。
+ メトリクスに関連し、使用可能なすべての検証については、「[データ検証](CHAP_Validating.md)」を参照してください。

## 拡張モニタリングのメトリクスの保持
<a name="retention-enhanced-monitoring-metrics"></a>

デフォルトでは、拡張モニタリングのメトリクスは CloudWatch メトリクスの保持ポリシーに従います。保持ポリシーの変更方法の詳細については、「*Amazon CloudWatch ユーザーガイド*」の「[Change log data retention in CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html#SttingLogRetention)」を参照してください。

# AWS DMS イベントの表示
<a name="CHAP_Monitoring.View.dms.events"></a>

 AWS DMS リソースの次のイベント情報を取得できます。
+ リソース名
+ リソースタイプ
+ イベントの日付と時刻
+ イベントのメッセージの概要

 AWS マネジメントコンソールのイベントタブでイベントにアクセスできます。このタブには、過去 7 日間のイベントが表示されます。`[describe-events](https://docs.aws.amazon.com/cli/latest/reference/dms/describe-events.html)` AWS CLI コマンドまたは `[DescribeEvents](https://docs.aws.amazon.com/dms/latest/APIReference/API_DescribeEvents.html)`DMS API オペレーションを使用してイベントを取得することもできます。 AWS CLI または DMS API を使用してイベントを表示する場合、過去 14 日間のイベントを取得できます。

**注記**  
イベントを長期間保存する必要がある場合は、EventBridge に AWS DMS イベントを送信し、イベントの詳細を保存のために別のサービスに送信できます。詳細については、「[AWS DMSでの Amazon EventBridge イベントルールの使用](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_EventBridge.html#CHAP_EventBridge.Rule)」を参照してください。  
 AWS DMS イベントの詳細については、[AWS DMS 「イベントカテゴリとイベントメッセージ](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_EventBridge.html#EventBridge.Messages)」を参照してください。

## DMS コンソール
<a name="CHAP_Monitoring.View.dms.events.console"></a>

DMS コンソールで過去 7 日間のすべての AWS DMS イベントを表示するには:

1.  AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/dms/v2 で DMS コンソールを開きます。

1. ナビゲーションページの **[イベント]** を選択します。

1. 検索語を入力して、結果をフィルタリングします。

   次の例は、文字 **replication-task** によってフィルタリングされたイベントのリストを示しています。  
![\[DMS イベントを表示する\]](http://docs.aws.amazon.com/ja_jp/dms/latest/userguide/images/AWS_dms_view_events.png)

## AWS CLI
<a name="CHAP_Monitoring.View.dms.events.cli"></a>

過去 1 時間に生成されたすべてのイベントを表示するには、パラメータなしで `[describe-events](https://docs.aws.amazon.com/cli/latest/reference/dms/describe-events.html)` AWS DMS CLI コマンドを実行します。

```
aws dms describe-events
```

次のサンプル出力は、レプリケーションタスクが変更されたことを示しています。

```
{
    "Events": [
        {
            "SourceIdentifier": "dms-task",
            "SourceType": "replication-task",
            "Message": "Replication task has modified.",
            "EventCategories": [
                "configuration change"
            ],
            "Date": "2025-04-09T12:48:22.231000-07:00"
        }
    ]
}
```

過去 14 日間 (20160 分) のすべての AWS DMS イベントを表示するには、 `[describe-events](https://docs.aws.amazon.com/cli/latest/reference/dms/describe-events.html)` AWS CLI コマンドを実行し、 `--duration`パラメータを に設定します**20160**。

```
aws dms describe-events --duration 20160
```

次の例では、レプリケーションインスタンス `dms-replication-instance` の指定された時間範囲内のイベントを示しています。

```
aws dms describe-events \
    --source-identifier dms-replication-instance \ 
    --source-type replication-instance \
    --start-time 2025-04-10T22:00Z \
    --end-time 2025-04-12T23:59Z
```

次のサンプル出力は、レプリケーションインスタンスのステータスを示しています。

```
{
    "Events": [
        {
            "SourceIdentifier": "dms-replication-instance",
            "SourceType": "replication-instance",
            "Message": "Replication application shutdown",
            "EventCategories": [],
            "Date": "2025-04-12T03:11:43.270000-07:00"
        },
        {
            "SourceIdentifier": "dms-replication-instance",
            "SourceType": "replication-instance",
            "Message": "Replication application restarted",
            "EventCategories": [],
            "Date": "2025-04-12T03:19:58.214000-07:00"
        }
    ]
}
```

## AWS DMS API
<a name="CHAP_Monitoring.View.dms.events.api"></a>

DMS API オペレーションを実行し、 `--duration`パラメータを に設定することで、過去 14 `[DescribeEvents](https://docs.aws.amazon.com/dms/latest/APIReference/API_DescribeEvents.html)` 日間のすべての AWS DMS インスタンスイベントを表示できます**20160**。