

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

# モニタリングツール
<a name="monitoring-tools"></a>

オブザーバビリティ、モニタリング、アラートの各ツールを使用して、以下を行うことをお勧めします。
+ Amazon RDS 環境のパフォーマンスに関するインサイトを取得する
+ 予期しない動作や疑わしい動作を検出する
+ キャパシティを計画し、Amazon RDS インスタンスの割り当てについて、知識に基づく意思決定を行う
+ メトリクスとログを分析し、起こり得る問題をプロアクティブに予測する
+ しきい値を超える状態が生じた際にアラートを発行することで、ユーザーに影響が及ぶ前にトラブルシューティングを行い、問題を解決する

こうしたツールは、さまざまなオプションとソリューションから選択できます。例として、AWS に用意されているクラウドネイティブのオブザーバビリティおよびモニタリングのツールとサービス、無料のオープンソースソフトウェアソリューション、Amazon RDS DB インスタンスをモニタリングする商用サードパーティー製ソリューションなどが挙げられます。これらのツールの一部については、以降のセクションで説明します。

ニーズに最適なツールを判断するには、それぞれのツールが備える各種機能や総合的な性能を組織の要件と比較します。また、次の点についても、ツールを評価すると良いでしょう: デプロイの容易さ、設定と統合、ソフトウェアの更新とメンテナンス、デプロイの方法 (ハードウェアやサーバーレスなど)、ライセンス、料金、組織に固有のその他の要因

**セクション**
+ [Amazon RDS が備えるツール](amazon-rds-tools.md)
+ [CloudWatch 名前空間](cloudwatch-namespaces.md)
+ [CloudWatch のアラームおよびダッシュボード](cloudwatch-dashboards.md)
+ [Amazon RDS Performance Insights](performance-insights-tools.md)
+ [拡張モニタリング](enhanced-monitoring.md)
+ [追加の AWS サービス](aws-monitoring-tools.md)
+ [サードパーティー製モニタリングツール](third-party-monitoring-tools.md)

# Amazon RDS が備えるツール
<a name="amazon-rds-tools"></a>

Amazon Relational Database Service (Amazon RDS) は、AWS クラウド で提供されるマネージド型データベースサービスです。Amazon RDS はマネージドサービスであるため、これを利用すると、データベースバックアップ、オペレーティングシステム (OS) とデータベースソフトウェアのインストール、OS とソフトウェアのパッチ適用、高可用性のセットアップ、ハードウェアライフサイクル管理、データセンターオペレーションといった、ほとんどの管理タスクから解放されます。AWS には、包括的なツールセットも用意されており、これによって、Amazon RDS DB インスタンスの包括的な[オブザーバビリティ](https://aws.amazon.com/products/management-and-governance/use-cases/monitoring-and-observability/)ソリューションを構築できます。

一部のモニタリングツールは、Amazon RDS サービスで提供されます。事前に設定されており、自動的に有効になります。Amazon RDS の新規インスタンスを起動すると、次の 2 つの自動ツールをすぐに使用できます。
+ **Amazon RDS インスタンスのステータス**: これにより、DB インスタンスの現在のヘルスを詳しく確認できます。例えば、ステータスコードには、*使用可能*、*停止*、*作成中*、*バックアップ中*、*失敗*があります。インスタンスのステータスは、Amazon RDS コンソール、AWS Command Line Interface (AWS CLI)、または Amazon RDS API を使用して表示できます。詳細については、Amazon RDS ドキュメントの「[Amazon RDS DB インスタンスのステータスの表示](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/accessing-monitoring.html#Overview.DBInstance.Status)」を参照してください。
+ **Amazon RDS の推奨事項**: DB インスタンス、リードレプリカ、DB パラメータグループ向けの推奨事項が自動的に提示されます。これらは、DB インスタンスの使用状況、パフォーマンスデータ、設定を分析すると提示されるもので、ガイダンスとして利用できます。例えば、*[エンジンバージョンが古くなっています]* という推奨事項が表示された場合、これは、DB インスタンスで最新バージョンのデータベースソフトウェアが稼働していないことや、最新のセキュリティ修正プログラムやその他の改善点を活用するには DB インスタンスのアップグレードが必要であることを示唆しています。詳細については、Amazon RDS ドキュメントの「[Amazon RDS の推奨事項の表示](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/monitoring-recommendations.html)」を参照してください。

# CloudWatch 名前空間
<a name="cloudwatch-namespaces"></a>

Amazon RDS は、[Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html) と統合されており、CloudWatch は、AWS で稼働するクラウドリソースとアプリケーションのモニタリングおよびアラートサービスとして提供されるものです。Amazon RDS では、DB インスタンスのオペレーション、使用率、パフォーマンス、ヘルスに関するメトリクス、ログファイル、トレース、イベントが自動収集され、長期保存、分析、アラートを目的として CloudWatch に送信されます。

Amazon RDS for MySQL と Amazon RDS for MariaDB では、デフォルトのメトリクスセットが 1 分間隔で CloudWatch に自動発行されます。これには、追加料金はかかりません。こうしたメトリクスは、メトリクスのコンテナである次の 2 つの*名前空間*に収集されます。
+ [AWS/RDS 名前空間](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-metrics.html#rds-cw-metrics-instance): DB インスタンスレベルのメトリクスが含まれており、その例には、`BinLogDiskUsage` (バイナリログが占有するディスク容量)、`CPUUtilization` (CPU 使用率)、`DatabaseConnections` (DB インスタンスへのクライアントネットワーク接続の数) などがあります。
+ [AWS/Usage 名前空間](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-metrics.html#rds-metrics-usage): アカウントレベルの使用状況メトリクスが含まれており、これらを使用して、[Amazon RDS のサービスクォータ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Limits)内で運用しているかどうかを判断します。メトリクスの例には、`DBInstances` (AWS アカウントまたはリージョンの DB インスタンスの数)、`DBSubnetGroups` (AWS アカウントまたはリージョンの DB サブネットグループの数)、`ManualSnapshots` (AWS アカウントまたはリージョンで手動作成されたデータベーススナップショットの数) などがあります。

CloudWatch では、次のようにメトリクスデータを保持します。
+ 3 時間: 60 秒未満間隔の高解像度カスタムメトリクスは 3 時間保持されます。3 時間後、データポイントは、1 分間のメトリクスに集約され、15 日間保持されます。
+ 15 日間: 60 秒 (1 分) 間隔のデータポイントは 15 日間保持されます。15 日後、データポイントは、5 分間のメトリクスに集約され、63 日間保持されます。
+ 63 日間: 300 秒 (5 分) 間隔のデータポイントは 63 日間保持されます。63 日後、データポイントは、1 時間のメトリクスに集約され、15 か月間保持されます。
+ 15 か月間: 3,600 秒 (1 時間) 間隔のデータポイントは 15 か月間 (455 日間) 利用可能です。

詳細については、CloudWatch ドキュメントの「[メトリクス](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric)」を参照してください。

# CloudWatch のアラームおよびダッシュボード
<a name="cloudwatch-dashboards"></a>

[Amazon CloudWatch アラーム](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html)を使用すると、特定の Amazon RDS メトリクスを一定期間モニタリングできます。例えば、`FreeStorageSpace` をモニタリングし、メトリクス値が設定したしきい値を超えた場合に 1 つ以上のアクションを実行できます。しきい値を 250 MB に設定済みで、空きストレージ容量が 200 MB (しきい値未満) の場合、アラームをアクティブ化して、Amazon RDS DB インスタンスに追加のストレージを自動プロビジョニングするアクションをトリガーさせることができます。アラームで、Amazon Simple Notification Service (Amazon SNS) を使用すると、DBA に通知用の SMS を送信することも可能です。次の図は、このプロセスを示したものです。

![\[CloudWatch アラームを使用した Amazon RDS のモニタリング\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/amazon-rds-monitoring-alerting/images/cloudwatch-alarms.png)


CloudWatch には、[ダッシュボード](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)もあり、これによって、メトリクスのビュー (グラフ) を作成、カスタマイズ、操作したり、カスタマイズしたビューを保存したりできます。また、[CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) を使用すると、スロークエリログとエラーログをモニタリングするダッシュボードを作成し、それらのログで特定のパターンが検出された場合にアラートを受信することも可能です。次の画像は、CloudWatch ダッシュボードの例を示しています。

![\[CloudWatch ダッシュボードを使用したメトリクスのモニタリング\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/amazon-rds-monitoring-alerting/images/cloudwatch-dashboard.png)


# Amazon RDS Performance Insights
<a name="performance-insights-tools"></a>

[Amazon RDS Performance Insights](https://aws.amazon.com/rds/performance-insights/) は、データベースのパフォーマンスチューニングおよびモニタリングツールであり、これによって、Amazon RDS のモニタリング機能を拡張できます。このツールは、データベースのパフォーマンス分析に有用です。具体的には、DB インスタンスの負荷を視覚化したり、待機、SQL ステートメント、ホスト、またはユーザーで負荷をフィルタリングしたりできます。また、複数のメトリクスが 1 つのインタラクティブグラフにまとめられるため、ロック待機、高い CPU 使用率、I/O レイテンシーなど、DB インスタンスに生じかねないボトルネックのタイプを特定し、その原因となっている SQL ステートメントを判断することも可能です。次の画像は、可視化の例を示しています。

![\[Amazon RDS Performance Insights のグラフ例\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/amazon-rds-monitoring-alerting/images/performance-insights-example.png)


アカウント内で稼働する Amazon RDS DB インスタンスのメトリクスを収集するには、DB インスタンスの作成プロセス中に [Performance Insights を有効にする](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Enabling.html)必要があります。無料利用枠には、7 日間のパフォーマンスデータ履歴と 1 か月あたり 100 万件の API リクエストが含まれていますが、必要に応じて、これより長いデータ保持期間を購入することもできます。料金情報の詳細については、「[Performance Insights の料金](https://aws.amazon.com/rds/performance-insights/pricing/)」を参照してください。

Performance Insights を使用して DB インスタンスをモニタリングする方法については、このガイドの後半にある [DB インスタンスのモニタリング](db-instance-monitoring.md)セクションを参照してください。

Performance Insights により、[メトリクスが CloudWatch に自動的に公開されます](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.Cloudwatch.html)。さらに、Performance Insights ツールだけでなく、CloudWatch に用意されている追加機能も活用できます。Performance Insights のメトリクスの確認に、CloudWatch コンソール、AWS CLI、または CloudWatch API を使用できるのです。他のメトリクスと同様に、CloudWatch アラームを追加することも可能で、例えば、DBA への SMS 通知をトリガーしたり、`DBLoad` メトリクスが設定済みしきい値を超えた場合に修正アクションを実行したりできます。Performance Insights メトリクスは、既存の CloudWatch ダッシュボードに追加することもできます。

# 拡張モニタリング
<a name="enhanced-monitoring"></a>

[拡張モニタリング](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.overview.html)は、Amazon RDS DB インスタンスが稼働するオペレーティングシステム (OS) のメトリクスをリアルタイムで取得するツールです。こうしたメトリクスにより、CPU、メモリ、Amazon RDS および OS プロセス、ファイルシステム、ディスク I/O データなどを対象に、最小で 1 秒の粒度を実現できます。こうしたメトリクスには、[Amazon RDS console](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.Viewing.html) からアクセスして、それらを分析できます。Performance Insights と同様に、拡張モニタリングメトリクスが Amazon RDS から CloudWatch に配信されるため、これによって、分析用メトリクスの長期保存、メトリクスフィルターの作成、ダッシュボードでのグラフ表示、アラーム設定といった追加機能を CloudWatch で利用できます。デフォルトの場合、Amazon RDS DB インスタンスを新規作成すると、拡張モニタリングは無効になりますが、DB インスタンスの作成または変更の際に、[有効](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.Enabling.html)にすることができます。利用料は、Amazon RDS から CloudWatch Logs に転送されたデータの量とストレージレートに基づいて課金されます。拡張モニタリングが有効になっている DB インスタンスの粒度および数に応じて、モニタリングデータの一部を CloudWatch Logs の無料利用枠に含めることができます。料金の詳細については、「[Amazon CloudWatch 料金表](https://aws.amazon.com/cloudwatch/pricing/)」を参照してください。ツールの詳細については、[Amazon RDS ドキュメント](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html)と[拡張モニタリング](https://aws.amazon.com/rds/faqs/#Enhanced_Monitoring)に関するよくある質問を参照してください。

# 追加の AWS サービス
<a name="aws-monitoring-tools"></a>

AWS では、Amazon RDS および CloudWatch との連携も可能なサポートサービスを複数提供しており、これらを使用すると、データベースのオブザーバビリティをさらに強化できます。例えば、Amazon EventBridge、Amazon CloudWatch Logs、AWS CloudTrail などのサポートサービスを利用できます。
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) は、サーバーレスイベントバスであり、これによって、アプリケーションと AWS リソース (Amazon RDS DB インスタンスなど) からイベントを受信し、それらをフィルタリング、変換、ルーティング、配信することができます。*Amazon RDS イベント*は、Amazon RDS 環境で生じた変更を示すものです。例えば、DB インスタンスのステータスが*使用可能*から*停止*に変わると、Amazon RDS では `RDS-EVENT-0087 / The DB instance has been stopped` というイベントが生成されます。Amazon RDS から、CloudWatch Events および EventBridge へは、イベントがほぼリアルタイムで配信されます。EventBridge と CloudWatch Events を使用すると、対象となる特定の Amazon RDS イベントにアラートを送信するルールを定義して、イベントがルールに一致した際に実行するアクションを自動化できます。イベントに対応するために、さまざまなターゲットが用意されています。例えば、修正アクションを実行する AWS Lambda 関数や、DBA や DevOps エンジニアに E メールや SMS を送信してイベントを通知する Amazon SNS トピックなどが利用可能です。
+ [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) サービスを利用すると、Amazon RDS for MySQL、MariaDB DB インスタンス、AWS CloudTrail など、あらゆるアプリケーション、システム、AWS サービスから取得したログファイルのストレージを一元化できます。この機能を DB インスタンスで[有効](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.MariaDB.html#USER_LogAccess.MariaDB.PublishtoCloudWatchLogs)にすると、Amazon RDS から CloudWatch Logs に次のログが自動発行されます。
  + エラーログ
  + スロークエリログ
  + 全般ログ
  + 監査ログ

  CloudWatch Logs Insights を使用すると、ログデータへのクエリと、そうしたデータの分析を行えます。この機能には、専用のクエリ言語も用意されており、これによって、定義したパターンに一致するログイベントを検索しやすくなります。例えば、MySQL DB インスタンスのテーブル破損を追跡するには、エラーログファイルで次のパターンをモニタリングします: `"ERROR 1034 (HY000): Incorrect key file for table '*'; try to repair it OR Table * is marked as crashed"`。フィルタリングしたログデータは、CloudWatch メトリクスに変換できます。変換後、そのメトリクスを使用して、グラフや表形式データのあるダッシュボードを作成することも、定義したしきい値を超えた場合にアラームを設定することも可能です。これが特に有用なのは、監査ログを使用する場合です。なぜなら、モニタリングを自動化して、想定外の動作や不審な動作が検出された際にアラートを送信し、是正アクションを実行できるからです。データベースログへのアクセスとそうしたログの管理には、AWS マネジメントコンソール、AWS CLI、Amazon RDS API、AWS SDK for CloudWatch Logs を使用できます。
+ [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) では、AWS アカウント のユーザーおよび API のアクティビティをログに記録し、継続的にモニタリングします。このツールは、Amazon RDS for MySQL または MariaDB DB インスタンスの監査、セキュリティモニタリング、運用上のトラブルシューティングに役立ちます。CloudTrail は Amazon RDS と統合されています。つまり、すべてのアクションがログに残り、Amazon RDS のユーザー、ロール、または AWS サービスによって実行されたアクションの記録を確認できます。例えば、ユーザーが Amazon RDS DB インスタンスを新規作成すると、イベントが検出され、ログには、リクエストされたアクション (`"eventName": "CreateDBInstance"`)、アクションの日時 (`"eventTime": "2022-07-30T22:14:06Z"`)、リクエストパラメータ (`"requestParameters": {"dBInstanceIdentifier": "test-instance", "engine": "mysql", "dBInstanceClass": "db.m6g.large"}`) などの情報が出力されます。CloudTrail のログイベントには、Amazon RDS コンソールからの呼び出しも、Amazon RDS API を使用するコードからの呼び出しも含まれています。

# サードパーティー製モニタリングツール
<a name="third-party-monitoring-tools"></a>

一部のシナリオでは、AWS が Amazon RDS に用意したクラウドネイティブの包括的な、オブザーバビリティおよびモニタリングツールスイートに加え、他のソフトウェアベンダーのモニタリングツールを使用することもできます。こうしたシナリオでは、ハイブリッドデプロイが行われます。例えば、オンプレミスデータセンターで多数のデータベースが稼働し、AWS クラウド でもデータベースが複数稼働しているといったシナリオです。自社で既にオブザーバビリティソリューションを確立している場合は、既存のツールを引き続き使用して、それらを AWS クラウド のデプロイ環境に拡張すると良いでしょう。サードパーティー製モニタリングソリューションを設定する場合の一般的な課題は、マネージドサービスである Amazon RDS によって、保護が適用されることです。例えば、データベースホストマシンへのアクセスが拒否されるため、DB インスタンスが稼働するホストオペレーティングシステムにエージェントソフトウェアをインストールすることはできません。ただし、多くのサードパーティー製モニタリングソリューションを Amazon RDS と統合できる方法があります。CloudWatch やその他の AWS クラウド サービス上にそれらを構築するのです。例えば、Amazon RDS メトリクス、ログ、イベント、トレースをエクスポートして、サードパーティー製モニタリングツールにインポートすることで、より詳細な分析、可視化、アラート発行を行えます。これらのサードパーティー製ソリューションには、Prometheus、Grafana、Percona などがあります。

## Prometheus と Grafana
<a name="prometheus-grafana"></a>

[Prometheus](https://prometheus.io/) は、設定されたターゲットから特定の間隔でメトリクスを収集する[オープンソース](https://github.com/prometheus/prometheus)のモニタリングソリューションであり、あらゆるアプリケーションやサービスをモニタリングできる汎用モニタリングソリューションでもあります。Amazon RDS DB インスタンスをモニタリングすると、CloudWatch では、Amazon RDS からメトリクスが収集されます。その後、YACE Exporter や CloudWatch Exporter などのオープンソースエクスポーターを使用して、メトリクスが Prometheus サーバーにエクスポートされます。
+ [YACE Exporter](https://promcat.io/apps/aws-rds) では、データエクスポートのタスクを最適化するために、CloudWatch API にリクエストを 1 回のみ送信し、複数のメトリクスを取得します。メトリクスが Prometheus サーバーに保存されると、ルール式がそこで評価され、指定した条件が観測されたときにアラートが生成されます。
+ [CloudWatch Exporter](https://github.com/prometheus/cloudwatch_exporter) は Prometheus によって公式に管理されています。このエクスポータにより、CloudWatch API を介して CloudWatch メトリクスを取得します。さらに、HTTP エンドポイントへの REST API リクエストを使用して、Prometheus と互換性のある形式で、それらのメトリクスを Prometheus サーバーに保存します。

エクスポーターを選択して、デプロイモデルを設計し、エクスポーターインスタンスを設定するときには、[CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html) と [CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/cloudwatch_limits_cwl.html) のサービスおよび API クォータの利用を検討してください。なぜなら、CloudWatch メトリクスを Prometheus サーバーにエクスポートする機能は CloudWatch API を介して実装されるからです。例えば、CloudWatch Exporter の複数のインスタンスを単一の AWS アカウント およびリージョンにデプロイし、数百の Amazon RDS DB インスタンスをモニタリングすると、スロットリングエラー (**ThrottlingException**) とコード 400 エラーが発生する可能性があります。こうした制限を取り払うには、YACE エクスポーターの使用を検討すると良いでしょう。このエクスポーターは、1 回のリクエストで最大 500 個の異なるメトリクスを収集するように最適化されています。さらに、多数の Amazon RDS DB インスタンスをデプロイするには、ワークロードを単一の AWS アカウント に集中させずに[複数の AWS アカウント](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/benefits-of-using-multiple-aws-accounts.html#distribute-aws-service-quotas-and-api-request-rate-limits) を使用することと、各 AWS アカウント のエクスポーターインスタンス数を制限することを検討しなければなりません。

アラートは Prometheus サーバーによって生成され、[アラートマネージャー](https://prometheus.io/docs/alerting/latest/alertmanager/)によって処理されます。このツールでは、アラートの重複排除、グループ化、適切な受信者 (E メール、SMS、Slack ユーザー) へのルーティング、自動応答アクションの開始が処理されます。[Grafana](https://grafana.com/) という別の[オープンソース](https://github.com/grafana/grafana)ツールでは、こうしたメトリクスを可視化でき、高度なグラフ、ダイナミックダッシュボードといった豊富な視覚化ウィジェットに加え、アドホッククエリやダイナミックドリルダウンなどの分析機能を利用可能です。Grafana は、ログを検索し分析する機能に加え、メトリクスとログを継続的に評価して、データがアラートルールに一致したら通知が送信されるアラート機能も備えています。

![\[Prometheus と Grafana を Amazon RDS と CloudWatch に連携させて使用する\]](http://docs.aws.amazon.com/ja_jp/prescriptive-guidance/latest/amazon-rds-monitoring-alerting/images/third-party-tools.png)


## Percona
<a name="percona"></a>

[Percona Monitoring and Management (PMM)](https://docs.percona.com/percona-monitoring-and-management/setting-up/client/aws.html) は、MySQL および MariaDB 向けに無料で提供されている、[オープンソース](https://github.com/percona/pmm)のデータベースモニタリング、管理、オブザーバビリティソリューションであり、これによって、DB インスタンスとそのホストから数千のパフォーマンスメトリクスを収集できます。また、ダッシュボードでデータを可視化するウェブ UI や、データベースヘルス評価の自動アドバイザーといった、追加機能の利用も可能です。PMM を使用すると、Amazon RDS をモニタリングできますが、PMM クライアント (エージェント) は、ホストにアクセスできないため、Amazon RDS DB インスタンスの基盤ホストにはインストールできません。代わりに、このツールでは、Amazon RDS DB インスタンスに接続して、サーバー統計、`INFORMATION_SCHEMA`、sys スキーマ、パフォーマンススキーマをクエリし、CloudWatch API を使用してメトリクス、ログ、イベント、トレースを取得します。PMM には AWS Identity and Access Management (IAM) ユーザーアクセスキー (IAM ロール) を持たせる必要があり、これによって、モニタリングに使用可能な Amazon RDS DB インスタンスを自動検出します。PMM ツールは、データベースのモニタリング用にプロファイリングされているため、データベース固有のメトリクスを Prometheus よりも多く収集できます。[PMM クエリ分析ダッシュボード](https://docs.percona.com/percona-monitoring-and-management/get-started/query-analytics.html)を使用するには、クエリソースとしてパフォーマンススキーマを設定する必要があります。クエリ分析エージェントが Amazon RDS 用にインストールされておらず、スロークエリログを読み取れないからです。代わりに、MySQL および MariaDB の DB インスタンスから `performance_schema` を直接クエリし、メトリクスを取得します。PMM の際立った特徴の 1 つは、[アラート機能](https://docs.percona.com/percona-monitoring-and-management/get-started/alerting.html)であり、これによって、データベース内で検出した問題について、DBA にアラートを発行し、アドバイスを提示できます。PMM には、一般的なセキュリティ脅威、パフォーマンスの低下、データ損失、データ破損を検出できる一連のチェック機能も用意されています。

こうしたツールだけでなく、市販のオブザーバビリティおよびモニタリングソリューションにも Amazon RDS と統合できるものがあります。その例には、[Datadog Database Monitoring](https://www.datadoghq.com/dg/monitor/rds-benefits/)、[Dynatrace Amazon RDS Monitoring](https://www.dynatrace.com/technologies/aws-monitoring/amazon-rds-monitoring/)、[AppDynamics Database Monitoring](https://www.appdynamics.com/supported-technologies/database/amazon-rds-monitoring) などがあります。