使用 Amazon 在 DynamoDB 中監控指標 CloudWatch - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Amazon 在 DynamoDB 中監控指標 CloudWatch

您可以使用 來監控 DynamoDB CloudWatch,其會收集和處理來自 DynamoDB 的原始資料,使其成為可讀取的近乎即時的指標。這些統計資料會保留一段時間,因此您可以存取歷史資訊,以更清楚了解 Web 應用程式或服務的運作方式。根據預設,DynamoDB 指標資料會自動傳送至 CloudWatch 。如需詳細資訊,請參閱 Amazon 使用者指南 中的什麼是 Amazon CloudWatch?指標保留 CloudWatch

如何使用 DynamoDB 指標?

DynamoDB 回報的指標可提供能讓您以不同方式分析的資訊。下列清單顯示一些常見的指標用途。這些是協助您開始的建議,而不是完整清單。

如何使用 DynamoDB 指標?

如何?

相關指標

如何監控資料表上的TTL刪除率?

您可以在TimeToLiveDeletedItemCount指定的期間內監控,以追蹤資料表上的TTL刪除率。如需使用 TimeToLiveDeletedItemCount 指標的無伺服器應用程式範例,請參閱使用 DynamoDB 存留時間 (TTL) 自動將項目封存至 S3,搭配 AWS Lambda 和 Amazon Data Firehose

如何判斷使用多少佈建輸送量?

您可以監控指定時段內的 ConsumedReadCapacityUnitsConsumedWriteCapacityUnits,以追蹤佈建輸送量的使用數量。

如何判斷哪些請求超過資料表的佈建輸送量配額?

如果請求內的任何事件超過佈建輸送量的配額,則 ThrottledRequests 會增加 1。然後,若要深入了解哪些事件調節了請求,請將 ThrottledRequests 與資料表和其索引的 ReadThrottleEventsWriteThrottleEvents 指標比較。

如何判斷是否發生任何系統錯誤?

您可以監控 SystemErrors 來判斷是否有任何請求導致 HTTP 500 (伺服器錯誤) 程式碼。這項指標通常應該等於零。否則建議您予以調查。

如何監控資料表操作的延遲值?

您可以監控SuccessfulRequestLatency和追蹤平均延遲。偶爾的延遲峰值無需擔心。不過,如果平均延遲很高,則可能有您必須解決的基礎問題。如需更多資訊,請參閱對 Amazon DynamoDB 中的延遲問題進行疑難排解

在 CloudWatch 主控台中檢視指標

指標會先依服務命名空間分組,然後依每個命名空間內的各種維度組合分組。

在 CloudWatch 主控台中檢視指標
  1. 在 開啟 CloudWatch 主控台https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇指標、所有指標。

  3. 選取 DynamoDB 命名空間。您也可以選擇用途命名空間來查看 DynamoDB 使用量指標。如需使用量指標的詳細資訊,請參閱AWS 使用量指標

  4. 瀏覽索引標籤會顯示命名空間中的所有指標。

  5. (選用) 若要將指標圖形新增至 CloudWatch 儀表板,請選擇動作,新增至儀表板

在 中檢視指標 AWS CLI

若要使用 取得指標資訊 AWS CLI,請使用 CloudWatch 命令 list-metrics。以下範例會列出 AWS/DynamoDB 命名空間中的所有指標。

aws cloudwatch list-metrics --namespace "AWS/DynamoDB"

若要取得指標統計數字,請使用 get-metric-statistics 命令。下列命令會取得ProductCatalog特定 24 小時期間內資料表的ConsumedReadCapacityUnits統計資料,精細度為 5 分鐘。

aws cloudwatch get-metric-statistics —namespace AWS/DynamoDB \ —metric-name ConsumedReadCapacityUnits \ —start-time 2023-11-01T00:00:00Z \ —end-time 2023-11-02T00:00:00Z \ —period 360 \ —statistics Average \ —dimensions Name=TableName,Value=ProductCatalog

範例輸出如下所示:

{ "Datapoints": [ { "Timestamp": "2023-11-01T 09:18:00+00:00", "Average": 20, "Unit": "Count" }, { "Timestamp": "2023-11-01T 04:36:00+00:00", "Average": 22.5, "Unit": "Count" }, { "Timestamp": "2023-11-01T 15:12:00+00:00", "Average": 20, "Unit": "Count" }, ... { "Timestamp": "2023-11-01T 17:30:00+00:00", "Average": 25, "Unit": "Count" } ], "Label": " ConsumedReadCapacityUnits " }