Amazon CloudWatch로 DynamoDB에서 지표 모니터링 - Amazon DynamoDB

Amazon CloudWatch로 DynamoDB에서 지표 모니터링

DynamoDB의 원시 데이터를 수집하여 읽기 가능하며 실시간에 가까운 지표로 처리하는 CloudWatch를 통해 DynamoDB를 모니터링할 수 있습니다. 이러한 통계는 일정 기간 동안 유지되므로 기록 정보를 보고 웹 애플리케이션이나 서비스가 어떻게 실행되고 있는지 전체적으로 더 잘 파악할 수 있습니다. 기본적으로 DynamoDB 지표 데이터는 CloudWatch에 자동으로 전송됩니다. 자세한 내용은 Amazon CloudWatch 사용 설명서Amazon CloudWatch란 무엇인가요?지표 보존 기간을 참조하세요.

DynamoDB 지표 사용 방법

DynamoDB에서 보고하는 지표는 다양한 방법으로 분석이 기능한 정보를 제공합니다. 다음 목록은 몇 가지 일반적인 지표 사용 사례를 보여 줍니다. 모든 사용 사례를 망라한 것은 아니지만 시작하는 데 참고가 될 것입니다.

DynamoDB 지표 사용 방법

사용 방법

관련 지표

내 테이블의 TTL 삭제 속도를 모니터링하려면 어떻게 해야 하나요?

지정한 시간 동안 TimeToLiveDeletedItemCount를 모니터링하여 테이블에 대한 TTL 삭제 속도를 추적할 수 있습니다. TimeToLiveDeletedItemCount 지표를 사용하는 서버리스 애플리케이션의 예를 보려면 Automatically archive items to S3 using DynamoDB time to live (TTL) with AWS Lambda and Amazon Data Firehose를 참조하세요.

프로비저닝된 처리량이 얼마나 사용되고 있는지 어떻게 알 수 있나요?

일정 시간 ConsumedReadCapacityUnits 또는 ConsumedWriteCapacityUnits를 모니터링하여 할당된 처리량이 얼마나 사용되는지 추적할 수 있습니다.

테이블의 프로비저닝된 처리량 할당량을 초과하는 요청을 어떻게 확인할 수 있나요?

요청에 포함된 이벤트가 프로비저닝된 처리량 할당량을 초과하면 ThrottledRequests가 1씩 증분됩니다. 그런 다음 요청의 병목 현상 원인이 되는 이벤트는 ThrottledRequests를 테이블과 테이블 인덱스의 ReadThrottleEventsWriteThrottleEvents 지표와 비교해보면 알 수 있습니다.

시스템 오류가 발생했는지 어떻게 확인할 수 있나요?

SystemErrors를 모니터링하여 HTTP 500(서버 오류) 코드가 발생한 요청이 있는지 확인할 수 있습니다. 일반적으로 이 지표는 0이어야 합니다. 그렇지 않다면 조사가 필요합니다.

테이블 작업의 지연 시간 값을 모니터링하려면 어떻게 해야 하나요?

SuccessfulRequestLatency를 모니터링하여 평균 지연 시간을 추적할 수 있습니다. 가끔 지연 시간이 급증하는 것은 걱정할 필요가 없습니다. 그러나 평균 지연 시간이 길면 해결해야 할 근본적인 문제가 있을 수 있습니다. 자세한 정보는 Amazon DynamoDB의 지연 시간 문제 해결을 참조하세요.

CloudWatch 콘솔에서 지표 보기

지표는 먼저 서비스 네임스페이스별로 그룹화된 다음, 각 네임스페이스 내에서 다양한 차원 조합별로 그룹화됩니다.

CloudWatch 콘솔에서 지표 보기
  1. https://console.aws.amazon.com/cloudwatch/에서 CloudWatch 콘솔을 엽니다.

  2. 탐색 창에서 지표, 모든 지표를 선택합니다.

  3. DynamoDB 네임스페이스를 선택합니다. 사용량(Usage) 네임스페이스를 선택하여 DynamoDB 사용량 지표를 확인할 수도 있습니다. 사용량 지표에 대한 자세한 내용은 AWS 사용량 지표를 참조하세요.

  4. 찾아보기 탭에 네임스페이스의 모든 지표가 표시됩니다.

  5. (선택 사항) 이 지표 그래프를 CloudWatch 대시보드에 추가하려면 작업, 대시보드에 추가를 선택합니다.

AWS CLI에서 지표 보기

AWS CLI를 사용하여 지표 정보를 얻으려면 CloudWatch 명령 list-metrics를 사용합니다. 다음 예에서는 AWS/DynamoDB 네임스페이스의 모든 지표를 나열합니다.

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

지표 통계를 얻으려면 get-metric-statistics 명령을 사용합니다. 다음 명령은 5분 단위로 특정 24시간 동안의 ProductCatalog 테이블에 대한 ConsumedReadCapacityUnits 통계를 가져옵니다.

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 " }