CloudWatch による Amazon DocumentDB のモニタリング - Amazon DocumentDB

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

CloudWatch による Amazon DocumentDB のモニタリング

Amazon DocumentDB (MongoDB との互換性) は Amazon CloudWatch と統合して、クラスターの運用メトリクスを収集および分析できるようにします。これらのメトリクスは、CloudWatch コンソール、Amazon DocumentDB コンソール、AWS Command Line Interface(AWS CLI)、または CloudWatch API です。

CloudWatch では、メトリクスが指定したしきい値を超過すると通知を受け取ることができるように、アラームを設定することもできます。超過が発生した場合に修正作業を行うことができるように Amazon CloudWatch Events を設定することもできます。CloudWatch とアラームの使用方法の詳細については、」Amazon CloudWatch ドキュメント

Amazon DocumentDB のメトリクス

Amazon DocumentDB クラスターとインスタンスの状態とパフォーマンスをモニタリングするには、Amazon DocumentDB コンソールで、次のメトリクスを表示できます。

リソース使用率
メトリクス 説明
BackupRetentionPeriodStorageUsed Amazon DocumentDB の保持期間内で特定時点への復元機能をサポートするために使用されるバックアップストレージの合計容量 (GiB 単位)。TotalBackupStorageBilled メトリクスによって報告される合計に含まれます。各 Amazon DocumentDB クラスターに対して個別に計算されます。
ChangeStreamLogSize 変更ストリームログを保存するためにクラスターが使用するストレージの容量 (MB)。この値は、クラスターの合計ストレージのサブセット (VolumeBytesUsed) であり、クラスターのコストに影響します。ストレージ料金の情報については、」Amazon DocumentDB の製品ページ。変更ストリームのログサイズは、クラスターで発生している変更の量と、変更ストリームの長期保存期間の関数です。変更ストリームの詳細については、「Amazon DocumentDB での変更ストリームの使用」を参照してください。
CPUUtilization インスタンスによって使用される CPU のパーセント。
DatabaseConnections 1 分間隔で発生したインスタンスでオープンしている接続の数。
DatabaseConnectionsMax 1 分間にインスタンス上でオープンしているデータベース接続の最大数。
DatabaseCursors 1 分間隔で発生したインスタンス上で開いているカーソルの数。
DatabaseCursorsMax 1 分間のインスタンスのオープンカーソルの最大数。
DatabaseCursorsTimedOut 1 分間にタイムアウトしたカーソルの数。
FreeableMemory 使用可能な RAM の容量 (バイト単位)。
FreeLocalStorage

このメトリクスでは、各インスタンスの一時テーブルとログで使用できるストレージの量が報告されます。この値は、インスタンスクラスによって異なります。インスタンスに対してより大きなインスタンスクラスを選択することで、インスタンス用の空きストレージ容量を増やすことができます。

LowMemThrottleQueueDepth

1 分間の頻度で消費される使用可能なメモリが少ないためにスロットリングされるリクエストのキュー深度。

LowMemThrottleMaxQueueDepth

1 分間の使用可能なメモリ不足によりスロットリングされるリクエストの最大キュー深度。

LowMemNumOperationsThrottled

1 分間の使用可能なメモリ不足が原因でスロットリングされるリクエストの数。

SnapshotStorageUsed バックアップ保持期間外に特定の Amazon DocumentDB クラスターのすべてのスナップショットによって使用されているバックアップストレージの合計容量 (GiB 単位)。TotalBackupStorageBilled メトリクスによって報告される合計に含まれます。各 Amazon DocumentDB クラスターに対して個別に計算されます。
SwapUsage インスタンスで使用するスワップ領域の量。
TotalBackupStorageBilled 特定の Amazon DocumentDB クラスターに対して請求対象のバックアップストレージの合計容量 (GiB 単位)。BackupRetentionPeriodStorageUsed メトリクスおよび SnapshotStorageUsed メトリクスによって測定されるバックアップストレージが含まれます。各 Amazon DocumentDB クラスターに対して個別に計算されます。
TransactionsOpen 1 分間隔で発生したインスタンスでオープンされているトランザクションの数。
TransactionsOpenMax 1 分間にインスタンスで開かれるトランザクションの最大数。
VolumeBytesUsed クラスターで使用されたストレージ容量 (バイト単位)。この値は、クラスターのコストに影響します。料金情報については、」Amazon DocumentDB の製品ページ
レイテンシー
メトリクス 説明
DBClusterReplicaLagMaximum クラスター内のプライマリインスタンスと各 Amazon DocumentDB インスタンス間の最大遅延時間 (ミリ秒単位)。
DBClusterReplicaLagMinimum クラスター内のプライマリインスタンスと各レプリカインスタンス間の最小遅延時間 (ミリ秒単位)。
DBInstanceReplicaLag プライマリインスタンスからレプリカインスタンスにアップデートをレプリケートする際の遅延時間 (ミリ秒単位)。
ReadLatency 1 回のディスク I/O 操作にかかる平均時間。
WriteLatency 1 回のディスク I/O 操作にかかる平均時間 (ミリ秒単位)。
操作
メトリクス 説明
DocumentsDeleted 1 分間隔で削除されたドキュメントの数。
DocumentsInserted 1 分間に挿入されたドキュメントの数。
DocumentsReturned 1 分間に返されたドキュメントの数。
DocumentsUpdated 1 分間に更新されたドキュメントの数。
OpcountersCommand 1 分間に発行されたコマンドの数。
OpcountersDelete 1 分間に発行された削除操作の数。
OpcountersGetmore 1 分間に発行された getmores の数。
OpcountersInsert 1 分間に発行された挿入操作の数。
OpcountersQuery 1 分間に発行されたクエリの数。
OpcountersUpdate 1 分間に発行された更新操作の数。
TransactionsStarted 1 分間にインスタンスで開始されたトランザクションの数。
TransactionsCommitted 1 分間にインスタンスでコミットされたトランザクションの数。
TransactionsAborted 1 分間にインスタンスで中断されたトランザクションの数。
TTLDeletedDocuments TTLMonitor によって 1 分間に削除されたドキュメントの数。
スループット
メトリクス 説明
NetworkReceiveThroughput クラスター内の各インスタンスが各クライアントから受信したネットワークスループットの量 (バイト/秒単位)。クラスターとクラスターボリューム内のインスタンス間のネットワークトラフィックは、このスループットに含まれません。
NetworkThroughput Amazon DocumentDB クラスター内の各インスタンスが各クライアントで送受信したネットワークスループットの量 (バイト/秒単位)。クラスターとクラスターボリューム内のインスタンス間のネットワークトラフィックは、このスループットに含まれません。
NetworkTransmitThroughput クラスター内の各インスタンスが各クライアントに対して送信したネットワークスループットの量 (バイト/秒単位)。クラスターとクラスターボリューム内のインスタンス間のネットワークトラフィックは、このスループットに含まれません。
ReadIOPS 1 秒あたりのディスク読み取り I/O 操作の平均回数。Amazon DocumentDB は、1 分間隔で読み取りおよび書き込み IOPS を個別に報告します。
ReadThroughput 1 秒あたりのディスクからの平均読み取りバイト数。
VolumeReadIOPs

課金読み取り I/O オペレーションの平均回数は 5 分間隔で報告されます。課金読み取りオペレーションはクラスターボリュームレベルで計算され、クラスター内のすべてのインスタンスから集計された後、5 分おきに報告されます。この値は読み取りオペレーションのメトリクスを 5 分間受け取ることによって計算されます。課金読み取りオペレーションのメトリクスを受け取って 300 秒で割ることで、1 秒あたりの課金読み取りオペレーションの回数を決定できます。

例えば、VolumeReadIOPsは 13,686 を返す場合、1 秒あたりの課金読み取りオペレーションは 45 (13,686/300 = 45.62) です。

バッファキャッシュに存在しないデータベースのページをリクエストするクエリの課金読み取りオペレーションが発生するため、ストレージからロードする必要があります。課金読み取りオペレーションはストレージからクエリの結果が読み取られるのと同様に急増することがありますが、その後バッファキャッシュにロードされます。

VolumeWriteIOPs

課金書き込み I/O オペレーションの平均回数は 5 分間隔で報告されます。課金書き込みオペレーションはクラスターボリュームレベルで計算され、クラスター内のすべてのインスタンスから集計された後、5 分おきに報告されます。この値は、5 分間にわたる書き込みオペレーションメトリクスの値を受け取ることによって計算されます。課金書き込みオペレーションメトリクスの値を受け取って 300 秒で割ることで、1 秒あたりの課金書き込みオペレーションの回数を決定できます。

例えば、VolumeWriteIOPsは 13,686 を返す場合、1 秒あたりの課金書き込みオペレーションは 45 (13,686/300 = 45.62) です。

ということに注意してください。VolumeReadIOPsそしてVolumeWriteIOPs指標は DocumentDB ストレージレイヤーによって計算され、プライマリインスタンスとレプリカインスタンスによって実行される iOS が含まれます。データは 20 ~ 30 分ごとに集計され、5 分間隔でレポートされるため、期間内のメトリックに対して同じデータポイントが出力されます。1 分間隔で挿入操作と相関するメトリックスを探している場合は、インスタンスレベルの WriteIOPS メトリックを使用できます。メトリックスは、Amazon DocumentDB プライマリインスタンスの [モニタリング] タブで使用できます。

WriteIOPS 1 秒あたりのディスク書き込み I/O 操作の平均回数。クラスタレベルで使用すると、WriteIOPsは、クラスター内のすべてのインスタンスで評価されます。読み取りおよび書き込み IOPS は個別に 1 分間隔で報告されます。
WriteThroughput 1 秒あたりのディスクへの平均書き込みバイト数。
システム
メトリクス 説明
BufferCacheHitRatio バッファキャッシュから提供されたリクエストの割合 (パーセント)。
DiskQueueDepth 分散ストレージボリュームへの同時書き込み要求の数。
EngineUptime インスタンスの実行時間 (秒単位)。
IndexBufferCacheHitRatio バッファキャッシュから提供されたインデックスリクエストの割合 (パーセント)。インデックス、コレクション、またはデータベースを削除した直後に、メトリックの 100% よりも大きなスパイクが表示されることがあります。これは 60 秒後に自動的に修正されます。この制限は、今後のパッチアップデートで修正される予定です。
T3 インスタンスメトリクス
メトリクス 説明
CPUCreditUsage 測定期間に消費された CPU クレジットの数。
CPUCreditBalance インスタンスが蓄積する CPU クレジット数。このバランスは CPU がバーストする際に枯渇し、CPU クレジットは獲得するよりも速い速度で使用されます。
CPUSurplusCreditBalance cpuCreditBalance 値がゼロになったときに CPU パフォーマンスを保持するために使用される余剰 CPU クレジットの数。
CPUSurplusCreditsCharged 24 時間で獲得できる CPU クレジットの最大数を越えた、追加料金が発生する分の余剰 CPU クレジットの数。詳細については、「」を参照してください。CPU クレジットの監視

CloudWatch データの表示

Amazon CloudWatch のデータを表示するには、CloudWatch コンソール、Amazon DocumentDB コンソール、AWS Command Line Interface(AWS CLI)、または CloudWatch API です。

Amazon DocumentDB マネジメントコンソールを使用して CloudWatch メトリクスを表示するには、以下のステップを実行します。

  1. にサインインします。AWS Management Consoleをクリックし、次の場所で Amazon DocumentDB コンソールを開きます。https://console.aws.amazon.com/docdb

  2. ナビゲーションペインで クラスターを選択します。

    ヒント

    画面の左側にナビゲーションペインが表示されない場合は、ページの左上隅にあるメニューアイコン () を選択します。

  3. [クラスター] ナビゲーションボックスに、列が表示されます。Cluster Identifier。インスタンスは、以下のスクリーンショットのように、クラスターの下に表示されます。

  4. インスタンスの一覧から、メトリクスを表示するインスタンスの名前を選択します。

  5. 結果のインスタンス概要ページで、Monitoringタブを使用して、Amazon DocumentDB インスタンスのメトリックスをグラフィカルに表示します。各メトリクスに対してグラフを生成する必要があるため、[CloudWatch] グラフにデータが入力されるまでに数分かかる場合があります。

    次の図は、Amazon DocumentDB コンソールでの 2 つの CloudWatch メトリクスのグラフィカルな表現を示しています。WriteIOPSそしてReadIOPS

    
                        Amazon DocumentDB コンソールの 18 個の CloudWatch メトリクスのうち 2 個 (writeiops および readiops)。

CloudWatch マネジメントコンソールを使用して CloudWatch メトリクスを表示するには、以下のステップを実行します。

  1. にサインインします。AWS Management Consoleをクリックし、次の場所で Amazon DocumentDB コンソールを開きます。https://console.aws.amazon.com/cloudwatch

  2. ナビゲーションペインで [Metrics (メトリクス)] を選択します。次に、サービス名のリストから、DocDB

  3. メトリクスのディメンション (たとえば、) を選択します。クラスターメトリクス).

  4. -すべてのメトリクスタブには、内のそのディメンションのメトリクスが一覧表示されます。DocDB

    1. テーブルを並べ替えるには、列見出しを使用します。

    2. メトリクスをグラフ表示するには、メトリクスの横にあるチェックボックスを選択します。すべてのメトリクスを選択するには、テーブルの見出し行にあるチェックボックスを選択します。

    3. メトリックでフィルタリングするには、メトリック名にカーソルを合わせ、メトリック名の横にあるドロップダウン矢印を選択します。次に、検索に追加以下の画像に示すように、と指定します。

      
                              指標にマウスポインターを置き、[検索に追加] を選択して、指標をフィルタリングします。

Amazon DocumentDB の CloudWatch データを表示するには、CloudWatch を使用します。get-metric-statistics以下のパラメーターを指定してオペレーションを実行します。

パラメータ

  • --namespace — 必須。CloudWatch メトリクスを表示するサービス名前空間。Amazon DocumentDB の場合、これはAWS/DocDB

  • --metric-name — 必須。データを表示するメトリクスの名前。

  • --start-time — 必須。最初に返すデータポイントを決定するタイムスタンプ。

    指定された値は含まれます。つまり、結果には指定されたタイムスタンプのデータポイントが含まれます。タイムスタンプは ISO 8601 UTC 形式である必要があります (例: 2016-10-03T23:00:00Z)。

  • --end-time — 必須。最後に返すデータポイントを決定するタイムスタンプ。

    指定された値は含まれます。つまり、結果には指定されたタイムスタンプのデータポイントが含まれます。タイムスタンプは ISO 8601 UTC 形式である必要があります (例: 2016-10-03T23:00:00Z)。

  • --period — 必須。返されるデータポイントの詳細度 (秒)。通常の解像度のメトリクスについては、期間は最短 1 分 (60 秒) で、60 の倍数である必要があります。1 分未満の間隔で収集される高解像度メトリクスについては、期間は 1、5、10、30、60、または 60 の倍数にできます。

  • --dimensions— オプション。メトリクスに複数のディメンションが含まれている場合は、各ディメンションの値を含める必要があります。CloudWatch は、ディメンションの一意の組み合わせをそれぞれ別のメトリクスとして扱います。ディメンションの特定の組み合わせが発行されていない場合は、その統計を取得することはできません。メトリクス作成時に使用した同じディメンションを指定する必要があります。

  • --statistics— オプション。パーセンタイル以外のメトリクス統計。パーセンタイル統計の場合は、ExtendedStatistics を使用します。GetMetricStatistics を呼び出すときは、Statistics または ExtendedStatistics のどちらかを指定する必要があります。両方を指定することはできません。

    許可される値:

    • SampleCount

    • Average

    • Sum

    • Minimum

    • Maximum

  • --extended-statistics— オプション。percentile の統計情報。p0.0 と p100 の間の値を指定します。GetMetricStatistics を呼び出すときは、Statistics または ExtendedStatistics のどちらかを指定する必要があります。両方を指定することはできません。

  • --unit— オプション。特定のメトリクスの単位。メトリクスが複数の単位で報告される場合があります。単位を指定しない結果、すべての単位が返されます。メトリクスが報告しない単位のみを指定した場合、呼び出しの結果は null になります。

    使用できる値:

    • Seconds

    • Microseconds

    • Milliseconds

    • Bytes

    • Kilobytes

    • Megabytes

    • Gigabytes

    • Terabytes

    • Bits

    • Kilobytes

    • Megabits

    • Gigabits

    • Terabits

    • Percent

    • Count

    • Bytes/Second

    • Kilobytes/Second

    • Megabytes/Second

    • Gigabytes/Second

    • Terabytes/Second

    • Bits/Second

    • Kilobits/Second

    • Megabits/Second

    • Gigabits/Second

    • Terabits/Second

    • Count/Second

    • None

次の例では、60 秒ごとにサンプルを取得し、2 時間の期間の最大 CPUUtilization を見つけます。

Linux、macOS、Unix の場合:

aws cloudwatch get-metric-statistics \ --namespace AWS/DocDB \ --dimensions \ Name=DBInstanceIdentifier,Value=docdb-2019-01-09-23-55-38 \ --metric-name CPUUtilization \ --start-time 2019-02-11T05:00:00Z \ --end-time 2019-02-11T07:00:00Z \ --period 60 \ --statistics Maximum

Windows の場合:

aws cloudwatch get-metric-statistics ^ --namespace AWS/DocDB ^ --dimensions ^ Name=DBInstanceIdentifier,Value=docdb-2019-01-09-23-55-38 ^ --metric-name CPUUtilization ^ --start-time 2019-02-11T05:00:00Z ^ --end-time 2019-02-11T07:00:00Z ^ --period 60 ^ --statistics Maximum

このオペレーションの出力は、次のようになります。

{ "Label": "CPUUtilization", "Datapoints": [ { "Unit": "Percent", "Maximum": 4.49152542374361, "Timestamp": "2019-02-11T05:51:00Z" }, { "Unit": "Percent", "Maximum": 4.25000000000485, "Timestamp": "2019-02-11T06:44:00Z" }, ********* some output omitted for brevity ********* { "Unit": "Percent", "Maximum": 4.33333333331878, "Timestamp": "2019-02-11T06:07:00Z" } ] }

Amazon DocumentDB ディメンション

Amazon DocumentDB のメトリクスは、アカウントまたはオペレーションの値で分類されます。CloudWatch コンソールを使用して、以下の表に示すいずれかのディメンションでフィルター処理された Amazon DocumentDB データを取得できます。

ディメンション 説明
DBClusterIdentifier 特定の Amazon DocumentDB クラスターに対してリクエストするデータをフィルター処理します。
DBClusterIdentifier, Role 特定の Amazon DocumentDB クラスターに対してリクエストしたデータをフィルター処理して、インスタンスロール (WRITER/READER) 別にメトリクスを集計します。例えば、クラスターに属するすべての リーダー インスタンスのメトリクスを集計できます。
DBInstanceIdentifier 特定のデータベースインスタンスに対してリクエストするデータをフィルター処理します。

Opcounter のモニタリング

Opcounter メトリクスの値は、アイドルクラスターに対してゼロ以外の値 (通常は 50 個まで) です。これは、Amazon DocumentDB が定期的にヘルスチェック、内部オペレーション、およびメトリック収集タスクを実行するためです。

データベース接続のモニタリング

次のようなデータベースエンジンコマンドを使用して接続数を表示すると、db.runCommand( { serverStatus: 1 })の場合、で表示される数よりも最大 10 個多い接続数が表示される場合がありますDatabaseConnectionsCloudWatch を通じて。これは、Amazon DocumentDB がで考慮されない定期的なヘルスチェックとメトリクスコレクションタスクが実行されるためです。DatabaseConnectionsDatabaseConnectionsは、お客様が開始した接続のみを表します。