권장되는 PromQL 경보
이러한 PromQL 경보를 클래식 권장 경보와 동등하게 사용합니다. CloudWatch OTLP 엔드포인트를 통해 수집된 지표에 대해 평가되는 PromQL 인스턴트 쿼리를 사용하여 동일한 지표를 모니터링합니다.
PromQL 경보는 EvaluationCriteria와 PromQLCriteria를 함께 사용합니다. 클래식 지표 경보와 달리 임곗값은 PromQL 쿼리 표현식에 직접 포함됩니다.
-
보류 기간 – 경보가 ALARM 상태로 전환되기 전에 시계열이 지속적으로 위반되어야 하는 초 단위 기간입니다.
-
복구 기간 – 경보가 OK 상태로 돌아가기 전에 모든 시계열의 위반을 중지해야 하는 초 단위 기간입니다.
-
평가 간격 – CloudWatch가 PromQL 쿼리를 실행하는 빈도(초)입니다.
참고
이러한 경보에는 CloudWatch OTLP 엔드포인트를 통해 게시된 지표가 필요합니다. 자세한 내용은 PromQL 경보 섹션을 참조하세요.
AWS CloudFormation을 사용하여 이러한 경보를 배포할 수도 있습니다. AWS::CloudWatch::Alarm 리소스에서 EvaluationCriteria 및 PromQLCriteria 속성을 사용합니다.
주제
API Gateway
REST API
- 4XXError
-
레이블: ApiName, Stage
경보 설명: REST API 단계의 평균 4XX 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: 요청 문제를 나타내는 높은 클라이언트 오류율을 감지합니다.
PromQL 기준:
avg({__name__="4XXError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 상당한 요청 실패를 나타내는 클라이언트 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- 5XXError
-
레이블: ApiName, Stage
경보 설명: REST API 단계의 평균 5XX 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: 백엔드 장애를 나타내는 높은 서버 오류율을 감지합니다.
PromQL 기준:
avg({__name__="5XXError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 즉각적인 조사가 필요한 서버 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 180
복구 기간: 300
- Latency
-
레이블: ApiName, Stage
경보 설명: REST API 단계의 p90 지연 시간이 2,500ms를 초과할 때 경보가 발생합니다.
의도: 사용자 경험에 영향을 주는 높은 p90 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 2500권장 임곗값: 2500(쿼리에 포함됨)
임곗값 정당화: 2,500ms를 초과하는 p90 지연 시간은 대부분의 요청에 대한 응답 시간이 저하되었음을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- : 수.
-
레이블: ApiName, Stage
경보 설명: REST API 단계의 총 요청 수가 예상 기준 아래로 떨어질 때 경보가 발생합니다.
의도: 라우팅 또는 가용성 문제를 나타낼 수 있는 적은 트래픽 양을 감지합니다.
PromQL 기준:
sum({__name__="Count", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 트래픽 기준을 바탕으로 설정하여 예상치 못한 감소를 감지합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 300
HTTP API
- 4xx
-
레이블: ApiId, Stage
경보 설명: HTTP API 단계의 평균 4xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: HTTP API 엔드포인트에서 높은 클라이언트 오류율을 감지합니다.
PromQL 기준:
avg({__name__="4xx", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 클라이언트 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- 5xx
-
레이블: ApiId, Stage
경보 설명: HTTP API 단계의 평균 5xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: HTTP API 엔드포인트에서 높은 서버 오류율을 감지합니다.
PromQL 기준:
avg({__name__="5xx", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 조사가 필요한 서버 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 180
복구 기간: 300
- Latency
-
레이블: ApiId, Stage
경보 설명: HTTP API 단계의 p90 지연 시간이 2,500ms를 초과할 때 경보가 발생합니다.
의도: HTTP API 엔드포인트에서 긴 p90 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2500권장 임곗값: 2500(쿼리에 포함됨)
임곗값 정당화: 2,500ms를 초과하는 p90 지연 시간은 응답 시간이 저하되었음을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- IntegrationLatency
-
레이블: ApiId, Stage
경보 설명: HTTP API 단계의 p90 통합 지연 시간이 2,000ms를 초과할 때 경보가 발생합니다.
의도: 응답 시간에 영향을 주는 긴 백엔드 통합 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000권장 임곗값: 2000(쿼리에 포함됨)
임곗값 정당화: 2,000ms를 초과하는 p90 통합 지연 시간은 백엔드 속도가 느림을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- : 수.
-
레이블: ApiId, Stage
경보 설명: HTTP API 단계의 총 요청 수가 예상 기준 아래로 떨어질 때 경보가 발생합니다.
의도: 라우팅 또는 가용성 문제를 나타낼 수 있는 적은 트래픽 양을 감지합니다.
PromQL 기준:
sum({__name__="Count", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 트래픽 기준을 바탕으로 설정하여 예상치 못한 감소를 감지합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 300
WebSocket API
- ClientError
-
레이블: ApiId, Stage
경보 설명: WebSocket API 단계의 평균 클라이언트 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: WebSocket API 연결에서 높은 클라이언트 오류율을 감지합니다.
PromQL 기준:
avg({__name__="ClientError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: WebSocket 연결에서 클라이언트 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ExecutionError
-
레이블: ApiId, Stage
경보 설명: WebSocket API 단계의 평균 실행 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: WebSocket API에서 높은 서버 측 실행 오류율을 감지합니다.
PromQL 기준:
avg({__name__="ExecutionError", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 조사가 필요한 실행 오류율 5% 초과를 감지합니다.
평가 간격: 60
보류 기간: 180
복구 기간: 300
- IntegrationLatency
-
레이블: ApiId, Stage
경보 설명: WebSocket API 단계의 p90 통합 지연 시간이 2,000ms를 초과할 때 경보가 발생합니다.
의도: WebSocket API 경로에서 긴 백엔드 통합 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000권장 임곗값: 2000(쿼리에 포함됨)
임곗값 정당화: 2,000ms를 초과하는 p90 통합 지연 시간은 백엔드 속도가 느림을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- MessageCount
-
레이블: ApiId, Stage
경보 설명: WebSocket API 단계의 총 메시지 수가 예상 기준 아래로 떨어질 때 경보가 발생합니다.
의도: 연결 또는 라우팅 문제를 나타낼 수 있는 적은 메시지 양을 감지합니다.
PromQL 기준:
sum({__name__="MessageCount", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 메시지 양을 기준으로 설정하여 예상치 못한 감소를 감지합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 300
Auto Scaling
- GroupInServiceCapacity
-
레이블: AutoScalingGroupName
경보 설명: Auto Scaling 그룹의 평균 서비스 중 용량이 예상 최솟값 아래로 떨어질 때 경보가 발생합니다.
의도: 시작 실패 또는 종료된 인스턴스로 인한 낮은 가용성을 감지합니다.
PromQL 기준:
avg({__name__="GroupInServiceCapacity", "@instrumentation.@name"="cloudwatch.aws/autoscaling", AutoScalingGroupName="your-auto-scaling-group-name"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 원하는 최소 용량을 기준으로 설정하여 시작 실패 또는 인스턴스 부족을 감지합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
Certificate Manager
- DaysToExpiry
-
레이블: CertificateArn
경보 설명: 인증서 만료까지 최소 일수가 44일 이하로 떨어질 때 경보가 발생합니다.
의도: 갱신 시간 확보를 위한 인증서 만료 사전 알림입니다.
PromQL 기준:
min({__name__="DaysToExpiry", "@instrumentation.@name"="cloudwatch.aws/certificatemanager", CertificateArn="your-certificate-arn"}) <= 44권장 임곗값: 44(쿼리에 포함됨)
임곗값 정당화: 갱신 프로세스를 완료할 수 있도록 인증서 만료 전에 충분한 리드 타임을 제공합니다.
평가 간격: 86400
보류 기간: 86,400
복구 기간: 86,400
CloudFront
- 5xxErrorRate
-
레이블: DistributionId
경보 설명: CloudFront 배포의 평균 5xx 오류율이 임곗값을 초과할 때 경보가 발생합니다.
의도: 콘텐츠 전송에 영향을 주는 높은 오리진 또는 CloudFront 오류율을 감지합니다.
PromQL 기준:
avg({__name__="5xxErrorRate", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 콘텐츠 전송에 대해 허용되는 오류율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- OriginLatency
-
레이블: DistributionId
경보 설명: CloudFront 배포의 p90 오리진 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 콘텐츠 전송 성능에 영향을 주는 긴 오리진 응답 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="OriginLatency", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 오리진 응답 시간과 캐싱 전략을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- FunctionValidationErrors
-
레이블: DistributionId, FunctionName
경보 설명: CloudFront 함수 검증 오류가 발생할 때 경보가 발생합니다.
의도: 함수 실행을 막는 CloudFront 함수 검증 실패를 감지합니다.
PromQL 기준:
sum({__name__="FunctionValidationErrors", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 검증 오류는 주의가 필요한 함수 구성 문제를 나타냅니다.
평가 간격: 60
보류 기간: 120
복구 기간: 120
- FunctionExecutionErrors
-
레이블: DistributionId, FunctionName
경보 설명: CloudFront 함수 실행 오류가 발생할 때 경보가 발생합니다.
의도: 요청 처리에 영향을 주는 CloudFront Functions의 런타임 실패를 감지합니다.
PromQL 기준:
sum({__name__="FunctionExecutionErrors", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 실행 오류는 함수 코드의 런타임 문제를 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- FunctionThrottles
-
레이블: DistributionId, FunctionName
경보 설명: CloudFront 함수 스로틀링이 발생할 때 경보가 발생합니다.
의도: 요청 처리를 저하시킬 수 있는 CloudFront 함수 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="FunctionThrottles", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id",FunctionName="your-function-name"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 스로틀링은 함수가 컴퓨팅 한도에 도달하고 있음을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Cognito
- SignUpThrottles
-
레이블: UserPool, UserPoolClient
경보 설명: 사용자 풀의 가입 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 새 사용자 등록을 막는 가입 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="SignUpThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 가입 작업에 허용되는 스로틀 비율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- SignInThrottles
-
레이블: UserPool, UserPoolClient
경보 설명: 사용자 풀의 로그인 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 사용자 인증을 막는 로그인 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="SignInThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 로그인 작업에 허용되는 스로틀 비율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TokenRefreshThrottles
-
레이블: UserPool, UserPoolClient
경보 설명: 사용자 풀의 토큰 새로 고침 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 세션 중단을 일으킬 수 있는 토큰 새로 고침 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="TokenRefreshThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 토큰 새로 고침 작업에 허용되는 스로틀 비율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- FederationThrottles
-
레이블: UserPool, UserPoolClient, IdentityProvider
경보 설명: 사용자 풀 ID 제공업체의 페더레이션 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 페더레이션 로그인을 막을 수 있는 페더레이션 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="FederationThrottles", "@instrumentation.@name"="cloudwatch.aws/cognito", UserPool="your-user-pool",UserPoolClient="your-user-pool-client",IdentityProvider="your-identity-provider"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 페더레이션 작업에 허용되는 스로틀 비율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
DynamoDB
- AccountProvisionedReadCapacityUtilization
-
레이블: 없음
경보 설명: 계정 수준에서 프로비저닝된 읽기 용량 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 프로비저닝된 읽기 용량이 계정 한도에 근접하는 시기를 감지합니다.
PromQL 기준:
max({__name__="AccountProvisionedReadCapacityUtilization", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 사용률이 80%인 경우 계정 한도에 도달하기 전에 헤드룸이 제한적입니다.
평가 간격: 300
보류 기간: 600
복구 기간: 600
- AccountProvisionedWriteCapacityUtilization
-
레이블: 없음
경보 설명: 계정 수준에서 프로비저닝된 쓰기 용량 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 프로비저닝된 쓰기 용량이 계정 한도에 근접하는 시기를 감지합니다.
PromQL 기준:
max({__name__="AccountProvisionedWriteCapacityUtilization", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 사용률이 80%인 경우 계정 한도에 도달하기 전에 헤드룸이 제한적입니다.
평가 간격: 300
보류 기간: 600
복구 기간: 600
- AgeOfOldestUnreplicatedRecord
-
레이블: TableName, DelegatedOperation
경보 설명: 가장 오래된 복제되지 않은 레코드의 수명이 임곗값을 초과할 때 경보가 발생합니다.
의도: 글로벌 테이블에서 오래된 데이터가 발생하는 원인이 될 수 있는 복제 지연 시간을 감지합니다.
PromQL 기준:
max({__name__="AgeOfOldestUnreplicatedRecord", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 복제 최신성 요구 사항을 기준으로 설정합니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900
- FailedToReplicateRecordCount
-
레이블: TableName, DelegatedOperation
경보 설명: 글로벌 테이블에서 레코드 복제에 실패할 때 경보가 발생합니다.
의도: 리전 간 데이터 불일치를 유발하는 복제 실패를 감지합니다.
PromQL 기준:
sum({__name__="FailedToReplicateRecordCount", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 복제 실패는 즉각적인 주의가 필요한 데이터 일관성 문제를 나타냅니다.
평가 간격: 60
보류 기간: 60
복구 기간: 60
- ReadThrottleEvents
-
레이블: TableName
경보 설명: 테이블의 읽기 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 프로비저닝된 용량 부족을 나타내는 읽기 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="ReadThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 읽기 작업에 허용되는 스로틀 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ReadThrottleEvents(GSI)
-
레이블: TableName, GlobalSecondaryIndexName
경보 설명: 글로벌 보조 인덱스의 읽기 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: GSI에서 인덱스 용량 부족을 나타내는 읽기 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="ReadThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",GlobalSecondaryIndexName="your-index-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: GSI 읽기 작업에 허용되는 스로틀 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ReplicationLatency
-
레이블: TableName, ReceivingRegion
경보 설명: 글로벌 테이블의 평균 복제 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 복제본 리전에서 오래된 읽기를 유발할 수 있는 긴 복제 지연 시간을 감지합니다.
PromQL 기준:
avg({__name__="ReplicationLatency", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",ReceivingRegion="your-receiving-region"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 복제본 리전에 대한 데이터 최신성 요구 사항을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- SuccessfulRequestLatency
-
레이블: TableName, Operation
경보 설명: 테이블 작업의 평균 성공 요청 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: DynamoDB 작업에서 애플리케이션 성능에 영향을 주는 긴 지연 시간을 감지합니다.
PromQL 기준:
avg({__name__="SuccessfulRequestLatency", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",Operation="your-operation"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 특정 DynamoDB 작업에 대한 지연 시간 SLA를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- SystemErrors
-
레이블: TableName
경보 설명: 테이블의 시스템 오류가 임곗값을 초과할 때 경보가 발생합니다.
의도: 테이블 가용성에 영향을 주는 DynamoDB 서비스 측 오류를 감지합니다.
PromQL 기준:
sum({__name__="SystemErrors", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 테이블에 허용되는 시스템 오류 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- ThrottledPutRecordCount
-
레이블: TableName, DelegatedOperation
경보 설명: 테이블의 스로틀링된 Put 레코드 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 스트리밍 작업에서 데이터 손실을 일으킬 수 있는 스로틀링된 Put을 감지합니다.
PromQL 기준:
max({__name__="ThrottledPutRecordCount", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 스트리밍 Put 작업에 허용되는 스로틀 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- UserErrors
-
레이블: 없음
경보 설명: 계정 전체에서 사용자 오류가 임곗값을 초과할 때 경보가 발생합니다.
의도: 검증 또는 조건부 검사 실패와 같은 높은 비율의 클라이언트 오류를 감지합니다.
PromQL 기준:
sum({__name__="UserErrors", "@instrumentation.@name"="cloudwatch.aws/dynamodb"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 클라이언트 측 요청 실패에 허용되는 오류율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- WriteThrottleEvents
-
레이블: TableName
경보 설명: 테이블의 쓰기 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: 프로비저닝된 용량 부족을 나타내는 쓰기 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="WriteThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 쓰기 작업에 허용되는 스로틀 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- WriteThrottleEvents(GSI)
-
레이블: TableName, GlobalSecondaryIndexName
경보 설명: 글로벌 보조 인덱스의 쓰기 스로틀 이벤트가 임곗값을 초과할 때 경보가 발생합니다.
의도: GSI에서 인덱스 용량 부족을 나타내는 쓰기 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="WriteThrottleEvents", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",GlobalSecondaryIndexName="your-index-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: GSI 쓰기 작업에 허용되는 스로틀 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
EBS
- VolumeStalledIOCheck
-
레이블: VolumeId, InstanceId
경보 설명: EBS 볼륨이 지연된 I/O 검사 실패를 보고할 때 경보가 발생합니다.
의도: EBS 볼륨에서 볼륨 장애를 나타내는 지연 I/O를 감지합니다.
PromQL 기준:
max({__name__="VolumeStalledIOCheck", "@instrumentation.@name"="cloudwatch.aws/ebs", VolumeId="your-volume-id",InstanceId="your-instance-id"}) >= 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 값이 1 이상이면 볼륨에 지연 I/O가 있어 즉각적인 조사가 필요합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
Amazon Elastic Compute Cloud
- CPUUtilization
-
레이블: InstanceId
경보 설명: EC2 인스턴스의 평균 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80% 임곗값은 포화 전에 헤드룸을 제공합니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900
- StatusCheckFailed
-
레이블: InstanceId
경보 설명: EC2 인스턴스의 인스턴스 또는 시스템 상태 확인이 실패할 때 경보가 발생합니다.
의도: 인스턴스 또는 시스템 상태 문제를 감지합니다.
PromQL 기준:
max({__name__="StatusCheckFailed", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) >= 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 모든 상태 확인 실패에는 조사가 필요합니다.
평가 간격: 300
보류 기간: 600
복구 기간: 600
- StatusCheckFailed_AttachedEBS
-
레이블: InstanceId
경보 설명: EC2 인스턴스의 연결된 EBS 볼륨에 연결할 수 없게 될 때 경보가 발생합니다.
의도: 연결할 수 없는 EBS 볼륨을 감지합니다.
PromQL 기준:
max({__name__="StatusCheckFailed_AttachedEBS", "@instrumentation.@name"="cloudwatch.aws/ec2", InstanceId="your-instance-id"}) >= 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 연결할 수 없는 볼륨으로 인해 I/O 오류가 발생합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
Amazon ECS
- CPUReservation
-
레이블: ClusterName
경보 설명: ECS 클러스터의 평균 CPU 예약이 80%를 초과할 때 경보가 발생합니다.
의도: CPU 용량에 근접하는 클러스터를 감지합니다.
PromQL 기준:
avg({__name__="CPUReservation", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80% 예약은 새 태스크에 대한 제한된 헤드룸을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- CPUUtilization
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 평균 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: ECS 서비스의 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- EBSFilesystemUtilization
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 평균 EBS 파일 시스템 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 EBS 스토리지 사용률을 감지합니다.
PromQL 기준:
avg({__name__="EBSFilesystemUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- MemoryReservation
-
레이블: ClusterName
경보 설명: ECS 클러스터의 평균 메모리 예약이 80%를 초과할 때 경보가 발생합니다.
의도: 메모리 용량에 근접하는 클러스터를 감지합니다.
PromQL 기준:
avg({__name__="MemoryReservation", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80% 예약은 새 태스크에 대한 제한된 헤드룸을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- MemoryUtilization
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 평균 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용률을 감지합니다.
PromQL 기준:
avg({__name__="MemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- HTTPCode_Target_5XX_Count
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 HTTP 5XX 오류 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 높은 서버 측 오류 수를 감지합니다.
PromQL 기준:
sum({__name__="HTTPCode_Target_5XX_Count", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 애플리케이션의 일반 오류율 기준을 바탕으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TargetResponseTime
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 평균 대상 응답 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 높은 대상 응답 시간을 감지합니다.
PromQL 기준:
avg({__name__="TargetResponseTime", "@instrumentation.@name"="cloudwatch.aws/ecs", ClusterName="your-cluster-name",ServiceName="your-service-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 애플리케이션의 허용되는 지연 시간 요구 사항을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Amazon ECS Container Insights
- EphemeralStorageUtilized
-
레이블: ClusterName, ServiceName
경보 설명: Fargate 태스크의 평균 임시 스토리지 사용량이 임곗값을 초과할 때 경보가 발생합니다.
의도: Fargate 태스크에 대한 높은 임시 스토리지 사용량을 감지합니다.
PromQL 기준:
avg({__name__="EphemeralStorageUtilized", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 태스크의 임시 스토리지 할당을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- RunningTaskCount
-
레이블: ClusterName, ServiceName
경보 설명: ECS 서비스의 실행 중인 태스크 수가 0으로 떨어질 때 경보가 발생합니다.
의도: 실행 중인 태스크가 없는 시기를 감지합니다.
PromQL 기준:
avg({__name__="RunningTaskCount", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) <= 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 실행 중인 태스크 0개는 서비스 중단을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- instance_filesystem_utilization
-
레이블: InstanceId, ContainerInstanceId, ClusterName
경보 설명: 컨테이너 인스턴스의 평균 파일 시스템 사용률이 90%를 초과할 때 경보가 발생합니다.
의도: 높은 파일 시스템 사용률을 감지합니다.
PromQL 기준:
avg({__name__="instance_filesystem_utilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", InstanceId="your-instance-id",ContainerInstanceId="your-container-instance-id",ClusterName="your-cluster-name"}) > 90권장 임곗값: 90(쿼리에 포함됨)
임곗값 정당화: 파일 시스템 사용률 90%는 작업을 위한 최소 공간을 남깁니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Amazon ECS Container Insights 향상된 관찰성
- TaskCpuUtilization(클러스터 수준)
-
레이블: ClusterName
경보 설명: 클러스터 수준에서 평균 태스크 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskCpuUtilization(서비스 수준)
-
레이블: ClusterName, ServiceName
경보 설명: 서비스 수준에서 평균 태스크 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskMemoryUtilization(클러스터 수준)
-
레이블: ClusterName
경보 설명: 클러스터 수준에서 평균 태스크 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskMemoryUtilization(서비스 수준)
-
레이블: ClusterName, ServiceName
경보 설명: 서비스 수준에서 평균 태스크 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ContainerCpuUtilization(클러스터 수준)
-
레이블: ClusterName
경보 설명: 클러스터 수준에서 평균 컨테이너 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="ContainerCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ContainerCpuUtilization(컨테이너 수준)
-
레이블: ContainerName, ClusterName, ServiceName
경보 설명: 컨테이너 수준에서 평균 컨테이너 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="ContainerCpuUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ContainerName="your-container-name",ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ContainerMemoryUtilization(클러스터 수준)
-
레이블: ClusterName
경보 설명: 클러스터 수준에서 평균 컨테이너 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용률을 감지합니다.
PromQL 기준:
avg({__name__="ContainerMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ContainerMemoryUtilization(컨테이너 수준)
-
레이블: ContainerName, ClusterName, ServiceName
경보 설명: 컨테이너 수준에서 평균 컨테이너 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용률을 감지합니다.
PromQL 기준:
avg({__name__="ContainerMemoryUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ContainerName="your-container-name",ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskEBSfilesystemUtilization
-
레이블: ClusterName, ServiceName
경보 설명: 태스크의 평균 EBS 파일 시스템 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 EBS 파일 시스템 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskEBSfilesystemUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskEphemeralStorageUtilization(클러스터 수준)
-
레이블: ClusterName
경보 설명: 클러스터 수준에서 평균 임시 스토리지 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 임시 스토리지 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskEphemeralStorageUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- TaskEphemeralStorageUtilization(서비스 수준)
-
레이블: ClusterName, ServiceName
경보 설명: 서비스 수준에서 평균 임시 스토리지 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 높은 임시 스토리지 사용률을 감지합니다.
PromQL 기준:
avg({__name__="TaskEphemeralStorageUtilization", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Amazon EFS
- PercentIOLimit
-
레이블: FileSystemId
경보 설명: EFS 파일 시스템이 I/O 한도의 100%에 도달할 때 경보가 발생합니다.
의도: 파일 시스템이 I/O 한도에 도달하는 시기를 감지합니다.
PromQL 기준:
avg({__name__="PercentIOLimit", "@instrumentation.@name"="cloudwatch.aws/efs", FileSystemId="your-filesystem-id"}) >= 100권장 임곗값: 100(쿼리에 포함됨)
임곗값 정당화: 100%에서 파일 시스템이 병목 현상이 됩니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- BurstCreditBalance
-
레이블: FileSystemId
경보 설명: EFS 파일 시스템의 버스트 크레딧 밸런스가 0으로 떨어질 때 경보가 발생합니다.
의도: 처리량 저하를 유발하는 소진된 버스트 크레딧을 감지합니다.
PromQL 기준:
avg({__name__="BurstCreditBalance", "@instrumentation.@name"="cloudwatch.aws/efs", FileSystemId="your-filesystem-id"}) <= 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 크레딧 0은 처리량 감소를 유발합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
Amazon EKS Container Insights
- node_cpu_utilization
-
레이블: ClusterName
경보 설명: EKS 워커 노드에서 최대 CPU 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 워커 노드에서 높은 CPU를 감지합니다.
PromQL 기준:
max({__name__="node_cpu_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- node_filesystem_utilization
-
레이블: ClusterName
경보 설명: EKS 워커 노드에서 최대 파일 시스템 사용률이 임곗값을 초과할 때 경보가 발생합니다.
의도: 워커 노드에서 높은 파일 시스템 사용량을 감지합니다.
PromQL 기준:
max({__name__="node_filesystem_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 노드의 스토리지 용량과 사용 패턴을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- node_memory_utilization
-
레이블: ClusterName
경보 설명: EKS 워커 노드에서 최대 메모리 사용률이 80%를 초과할 때 경보가 발생합니다.
의도: 워커 노드에서 높은 메모리를 감지합니다.
PromQL 기준:
max({__name__="node_memory_utilization", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 포화 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- pod_cpu_utilization_over_pod_limit
-
레이블: ClusterName, Namespace, Service
경보 설명: 포드 CPU 사용률이 한도의 80%를 초과할 때 경보가 발생합니다.
의도: CPU 한도에 근접하는 포드를 감지합니다.
PromQL 기준:
max({__name__="pod_cpu_utilization_over_pod_limit", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name",Namespace="your-namespace",Service="your-service"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 스로틀링 발생 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- pod_memory_utilization_over_pod_limit
-
레이블: ClusterName, Namespace, Service
경보 설명: 포드 메모리 사용률이 한도의 80%를 초과할 때 경보가 발생합니다.
의도: 메모리 한도에 근접하는 포드를 감지합니다.
PromQL 기준:
max({__name__="pod_memory_utilization_over_pod_limit", "@instrumentation.@name"="cloudwatch.aws/eks-containerinsights", ClusterName="your-cluster-name",Namespace="your-namespace",Service="your-service"}) > 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80%는 OOMKill 발생 전 헤드룸을 제공합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Amazon ElastiCache
- CPUUtilization
-
레이블: CacheClusterId, CacheNodeId
경보 설명: ElastiCache 노드의 평균 CPU 사용률이 임곗값을 초과할 때 경보가 발생합니다.
의도: 인스턴스에서 높은 CPU를 감지합니다.
PromQL 기준:
avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id",CacheNodeId="your-cache-node-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 노드 유형 및 워크로드 특성을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- CurrConnections
-
레이블: CacheClusterId, CacheNodeId
경보 설명: ElastiCache 노드의 연결 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 높은 연결 수를 감지합니다.
PromQL 기준:
avg({__name__="CurrConnections", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id",CacheNodeId="your-cache-node-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 연결 풀 크기 및 애플리케이션 요구 사항을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- DatabaseMemoryUsagePercentage
-
레이블: CacheClusterId
경보 설명: ElastiCache 클러스터의 데이터베이스 메모리 사용량이 임곗값을 초과할 때 경보가 발생합니다.
의도: 높은 메모리 사용량을 감지하여 쓰기 실패를 방지합니다.
PromQL 기준:
avg({__name__="DatabaseMemoryUsagePercentage", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 제거 정책과 데이터 중요도를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- EngineCPUUtilization
-
레이블: CacheClusterId
경보 설명: ElastiCache 클러스터의 Redis 엔진 CPU 사용률이 90%를 초과할 때 경보가 발생합니다.
의도: 높은 Redis 엔진 CPU 사용률을 감지합니다.
PromQL 기준:
avg({__name__="EngineCPUUtilization", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) > 90권장 임곗값: 90(쿼리에 포함됨)
임곗값 정당화: Redis는 단일 스레드이며 90% 초과는 포화를 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ReplicationLag
-
레이블: CacheClusterId
경보 설명: ElastiCache 클러스터의 복제 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 데이터 일관성에 영향을 주는 복제 지연을 감지합니다.
PromQL 기준:
avg({__name__="ReplicationLag", "@instrumentation.@name"="cloudwatch.aws/elasticache", CacheClusterId="your-cache-cluster-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 오래된 읽기에 대한 애플리케이션의 허용 오차를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
탄력적 GPU
- GPUConnectivityCheckFailed
-
레이블: InstanceId, EGPUId
경보 설명: Elastic Graphics 액셀러레이터가 인스턴스와의 연결이 끊어질 때 경보가 발생합니다.
의도: Elastic Graphics 액셀러레이터에 대한 연결 문제를 감지합니다.
PromQL 기준:
max({__name__="GPUConnectivityCheckFailed", "@instrumentation.@name"="cloudwatch.aws/elasticgpus", InstanceId="your-instance-id",EGPUId="your-egpu-id"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 연결 실패에는 조사가 필요합니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900
- GPUHealthCheckFailed
-
레이블: InstanceId, EGPUId
경보 설명: Elastic Graphics 액셀러레이터 상태 확인이 실패할 때 경보가 발생합니다.
의도: 비정상 Elastic Graphics 액셀러레이터를 감지합니다.
PromQL 기준:
max({__name__="GPUHealthCheckFailed", "@instrumentation.@name"="cloudwatch.aws/elasticgpus", InstanceId="your-instance-id",EGPUId="your-egpu-id"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 상태 확인 실패는 액셀러레이터 문제를 나타냅니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900
Amazon EventBridge Scheduler
- TargetErrorThrottledCount
-
경보 설명: 예약 대상 간접 호출이 스로틀링될 때 경보가 발생합니다.
의도: 일정 지연을 유발하는 대상 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="TargetErrorThrottledCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 스로틀링은 대상 용량 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- InvocationThrottleCount
-
경보 설명: 스케줄러 간접 호출이 스로틀링될 때 경보가 발생합니다.
의도: 스케줄러 간접 호출 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="InvocationThrottleCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 스로틀링은 예약된 실행을 지연시킵니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- InvocationDroppedCount
-
경보 설명: 예약된 간접 호출이 삭제될 때 경보가 발생합니다.
의도: 삭제된 간접 호출을 감지합니다.
PromQL 기준:
sum({__name__="InvocationDroppedCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 삭제된 간접 호출은 예약된 이벤트 손실을 나타냅니다.
평가 간격: 60
보류 기간: 60
복구 기간: 60
- InvocationsFailedToBeSentToDeadLetterCount
-
경보 설명: 실패한 간접 호출을 Dead Letter Queue(DLQ)로 전송할 수 없을 때 경보가 발생합니다.
의도: DLQ 전송 실패를 감지합니다.
PromQL 기준:
sum({__name__="InvocationsFailedToBeSentToDeadLetterCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: DLQ 전송 실패는 오류 정보 손실을 의미합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
Amazon Kinesis Data Streams
- GetRecords.IteratorAgeMilliseconds
-
레이블: StreamName
경보 설명: Kinesis 스트림의 소비자 반복기 수명이 임곗값을 초과할 때 경보가 발생합니다.
의도: 보존 기간을 초과하여 데이터 손실 위험이 있는 데이터를 감지합니다.
PromQL 기준:
max({__name__="GetRecords.IteratorAgeMilliseconds", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 스트림 보존 기간 백분율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- GetRecords.Success
-
레이블: StreamName
경보 설명: Kinesis 스트림의 GetRecords 성공률이 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 소비자 검색 실패를 감지합니다.
PromQL 기준:
avg({__name__="GetRecords.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 성공률을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- PutRecord.Success
-
레이블: StreamName
경보 설명: Kinesis 스트림의 PutRecord 성공률이 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 생산자 수집 실패를 감지합니다.
PromQL 기준:
avg({__name__="PutRecord.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 성공률을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- PutRecords.FailedRecords
-
레이블: StreamName
경보 설명: Kinesis 스트림의 배치 Put 작업이 실패한 레코드를 생성할 때 경보가 발생합니다.
의도: 일괄 Put 실패를 감지합니다.
PromQL 기준:
sum({__name__="PutRecords.FailedRecords", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 실패 횟수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ReadProvisionedThroughputExceeded
-
레이블: StreamName
경보 설명: Kinesis 스트림의 소비자 읽기가 프로비저닝된 처리량을 초과할 때 경보가 발생합니다.
의도: 소비자 읽기 스로틀링을 감지합니다.
PromQL 기준:
avg({__name__="ReadProvisionedThroughputExceeded", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 지속적인 스로틀링은 용량 요구 사항을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- SubscribeToShardEvent.MillisBehindLatest
-
레이블: StreamName, ConsumerName
경보 설명: 향상된 팬아웃 소비자가 최신 레코드보다 뒤처질 때 경보가 발생합니다.
의도: 향상된 팬아웃 소비자 처리 지연 시간을 감지합니다.
PromQL 기준:
avg({__name__="SubscribeToShardEvent.MillisBehindLatest", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name",ConsumerName="your-consumer-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 처리 지연을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- WriteProvisionedThroughputExceeded
-
레이블: StreamName
경보 설명: Kinesis 스트림의 생산자 쓰기가 프로비저닝된 처리량을 초과할 때 경보가 발생합니다.
의도: 생산자 쓰기 스로틀링을 감지합니다.
PromQL 기준:
avg({__name__="WriteProvisionedThroughputExceeded", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 지속적인 스로틀링은 용량 확보가 필요함을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
AWS Lambda
- ClaimedAccountConcurrency
-
경보 설명: 클레임한 계정 동시성이 임곗값을 초과할 때 경보가 발생합니다.
의도: 동시성 할당량에 근접하는 계정을 감지합니다.
PromQL 기준:
max({__name__="ClaimedAccountConcurrency", "@instrumentation.@name"="cloudwatch.aws/lambda"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 리전별 동시성 한도의 백분율로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- 오류
-
레이블: FunctionName
경보 설명: Lambda 함수의 함수 오류 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 높은 함수 오류 수를 감지합니다.
PromQL 기준:
sum({__name__="Errors", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 오류량을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 180
복구 기간: 300
- 제한
-
레이블: FunctionName
경보 설명: Lambda 함수의 함수 간접 호출이 스로틀링될 때 경보가 발생합니다.
의도: 함수 간접 호출 스로틀링을 감지합니다.
PromQL 기준:
sum({__name__="Throttles", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 스로틀링은 동시성 한도에 도달했음을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- 지속 시간*
-
레이블: FunctionName
경보 설명: Lambda 함수의 p90 함수 지속 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 장기 실행 함수 간접 호출을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="Duration", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 함수 제한 시간을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- ConcurrentExecutions
-
레이블: FunctionName
경보 설명: Lambda 함수의 동시 실행이 임곗값을 초과할 때 경보가 발생합니다.
의도: 동시성 한도에 근접하는 함수를 감지합니다.
PromQL 기준:
max({__name__="ConcurrentExecutions", "@instrumentation.@name"="cloudwatch.aws/lambda", FunctionName="your-function-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예약된 동시성의 백분율로 설정합니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
AWS Lambda Insights
- memory_utilization
-
레이블: function_name
경보 설명: Lambda 함수의 평균 메모리 사용률이 90%를 초과할 때 경보가 발생합니다.
의도: 구성된 메모리 한도에 근접하는 함수를 감지합니다.
PromQL 기준:
avg({__name__="memory_utilization", "@instrumentation.@name"="cloudwatch.aws/lambda-insights", function_name="your-function-name"}) > 90권장 임곗값: 90(쿼리에 포함됨)
임곗값 정당화: 90%를 초과하면 메모리 부족 오류가 발생할 위험이 있습니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
NAT 게이트웨이
- ErrorPortAllocation
-
레이블: NatGatewayId
경보 설명: NAT 게이트웨이가 새 연결을 위한 포트를 할당하지 못할 때 경보가 발생합니다.
의도: 새 연결을 막는 포트 할당 실패를 감지합니다.
PromQL 기준:
sum({__name__="ErrorPortAllocation", "@instrumentation.@name"="cloudwatch.aws/natgateway", NatGatewayId="your-nat-gateway-id"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 할당 실패는 연결에 영향을 줍니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- PacketsDropCount
-
레이블: NatGatewayId
경보 설명: NAT 게이트웨이가 임곗값을 초과하는 패킷을 삭제할 때 경보가 발생합니다.
의도: 용량 또는 연결 문제를 나타내는 패킷 삭제를 감지합니다.
PromQL 기준:
sum({__name__="PacketsDropCount", "@instrumentation.@name"="cloudwatch.aws/natgateway", NatGatewayId="your-nat-gateway-id"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 삭제율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
AWS PrivateLink 엔드포인트
- PacketsDropped
-
레이블: VpcId, VpcEndpointId, EndpointType, SubnetId, ServiceName
경보 설명: VPC 엔드포인트가 임곗값을 초과하는 패킷을 삭제할 때 경보가 발생합니다.
의도: 비정상 엔드포인트 또는 엔드포인트 서비스를 감지합니다.
PromQL 기준:
sum({__name__="PacketsDropped", "@instrumentation.@name"="cloudwatch.aws/privatelinkendpoints", VpcId="your-vpc-id",VpcEndpointId="your-vpc-endpoint-id",EndpointType="your-endpoint-type",SubnetId="your-subnet-id",ServiceName="your-service-name"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 삭제율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
AWS PrivateLink 서비스
- RstPacketsSent
-
레이블: ServiceId, LoadBalancerArn, Az
경보 설명: 엔드포인트 서비스의 RST 패킷 속도가 임곗값을 초과할 때 경보가 발생합니다.
의도: 엔드포인트 서비스의 비정상 대상을 감지합니다.
PromQL 기준:
sum({__name__="RstPacketsSent", "@instrumentation.@name"="cloudwatch.aws/privatelinkservices", ServiceId="SVC",LoadBalancerArn="LB",Az="AZ"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 RST 패킷 속도를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
RDS
- CPUUtilization
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 평균 CPU 사용률이 90%를 초과할 때 경보가 발생합니다.
의도: 높은 CPU를 감지하여 성능 저하를 방지합니다.
PromQL 기준:
avg({__name__="CPUUtilization", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 90권장 임곗값: 90(쿼리에 포함됨)
임곗값 정당화: 90%는 포화 상태에 가까움을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- DatabaseConnections
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 데이터베이스 연결이 임곗값을 초과할 때 경보가 발생합니다.
의도: 최대 한도에서 연결 거부를 방지합니다.
PromQL 기준:
avg({__name__="DatabaseConnections", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: max_connections 파라미터의 백분율로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- EBSByteBalance%
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 EBS 바이트 밸런스가 10% 미만으로 떨어질 때 경보가 발생합니다.
의도: 병목 현상을 일으키는 낮은 처리량 크레딧을 감지합니다.
PromQL 기준:
avg({__name__="EBSByteBalance%", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 10권장 임곗값: 10(쿼리에 포함됨)
임곗값 정당화: 10% 미만이면 처리량 저하 위험이 있습니다.
평가 간격: 60
보류 기간: 180
복구 기간: 180
- EBSIOBalance%
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 EBS IO 밸런스가 10% 미만으로 떨어질 때 경보가 발생합니다.
의도: 병목 현상을 일으키는 낮은 IOPS 크레딧을 감지합니다.
PromQL 기준:
avg({__name__="EBSIOBalance%", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 10권장 임곗값: 10(쿼리에 포함됨)
임곗값 정당화: 10% 미만이면 IOPS 저하 위험이 있습니다.
평가 간격: 60
보류 기간: 180
복구 기간: 180
- FreeableMemory
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 확장 가능 메모리가 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 연결 거부를 일으키는 메모리 부족을 방지합니다.
PromQL 기준:
avg({__name__="FreeableMemory", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 인스턴스 클래스 메모리를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- FreeLocalStorage
-
레이블: DBInstanceIdentifier
경보 설명: Aurora 인스턴스의 로컬 여유 스토리지가 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: Aurora 로컬 스토리지 소진을 방지합니다.
PromQL 기준:
avg({__name__="FreeLocalStorage", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 작업에 필요한 최솟값을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- FreeStorageSpace
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 여유 스토리지 공간이 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 스토리지 공간 부족으로 인한 가동 중지 시간을 방지합니다.
PromQL 기준:
min({__name__="FreeStorageSpace", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 스토리지 증가율 및 프로비저닝된 크기를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- MaximumUsedTransactionID(MaximumUsedTransactionIDs
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 사용된 최대 트랜잭션 ID 수가 10억 개를 초과할 때 경보가 발생합니다.
의도: PostgreSQL 트랜잭션 ID 랩어라운드를 방지합니다.
PromQL 기준:
avg({__name__="MaximumUsedTransactionIDs", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000000권장 임곗값: 1000000000(쿼리에 포함됨)
임곗값 정당화: 10억은 랩어라운드 위험이 임박했음을 나타냅니다.
평가 간격: 60
보류 기간: 60
복구 기간: 60
- ReadLatency
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 p90 읽기 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 디스크 문제를 나타내는 긴 읽기 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="ReadLatency", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 애플리케이션 지연 시간을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- ReplicaLag
-
레이블: DBInstanceIdentifier
경보 설명: RDS 읽기 복제본의 복제 지연 시간이 60초를 초과할 때 경보가 발생합니다.
의도: 데이터 손실 위험이 있는 복제 지연을 감지합니다.
PromQL 기준:
max({__name__="ReplicaLag", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 60권장 임곗값: 60(쿼리에 포함됨)
임곗값 정당화: 60초는 대부분의 워크로드에서 상당한 지연 시간을 나타냅니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- WriteLatency
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 p90 쓰기 지연 시간이 임곗값을 초과할 때 경보가 발생합니다.
의도: 디스크 문제를 나타내는 긴 쓰기 지연 시간을 감지합니다.
PromQL 기준:
histogram_quantile(0.9, {__name__="WriteLatency", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 애플리케이션 지연 시간을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- DBLoad
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 평균 데이터베이스 로드가 임곗값을 초과할 때 경보가 발생합니다.
의도: 성능 저하를 유발하는 높은 데이터베이스 로드를 감지합니다.
PromQL 기준:
avg({__name__="DBLoad", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: vCPU 수의 배수로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- AuroraVolumeBytesLeftTotal
-
레이블: DBClusterIdentifier
경보 설명: 남아 있는 Aurora 클러스터 스토리지 바이트가 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: Aurora 클러스터 스토리지 소진을 방지합니다.
PromQL 기준:
avg({__name__="AuroraVolumeBytesLeftTotal", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 성장률을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- AuroraBinlogReplicaLag
-
레이블: DBClusterIdentifier
경보 설명: Aurora binlog 복제본 지연 시간이 오류 상태를 나타날 때 경보가 발생합니다.
의도: 라이터 인스턴스 복제 오류를 감지합니다.
PromQL 기준:
avg({__name__="AuroraBinlogReplicaLag", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <= -1권장 임곗값: -1(쿼리에 포함됨)
임곗값 정당화: -1은 오류 상태를 나타냅니다.
평가 간격: 60
보류 기간: 120
복구 기간: 120
- BlockedTransactions
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 차단된 트랜잭션 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 성능 저하를 유발하는 트랜잭션 차단을 감지합니다.
PromQL 기준:
avg({__name__="BlockedTransactions", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 차단된 트랜잭션 수를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- BufferCacheHitRatio
-
레이블: DBInstanceIdentifier
경보 설명: RDS 인스턴스의 버퍼 캐시 적중률이 80% 미만으로 떨어질 때 경보가 발생합니다.
의도: 성능 저하를 유발하는 낮은 캐시 효율성을 감지합니다.
PromQL 기준:
avg({__name__="BufferCacheHitRatio", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) < 80권장 임곗값: 80(쿼리에 포함됨)
임곗값 정당화: 80% 미만은 과도한 디스크 I/O를 나타냅니다.
평가 간격: 60
보류 기간: 600
복구 기간: 600
- EngineUptime
-
레이블: DBClusterIdentifier
경보 설명: 엔진 가동 시간이 0으로 떨어지면 Aurora 라이터 재시작을 나타내는 경보가 발생합니다.
의도: Aurora 라이터 인스턴스 가동 중지 시간 또는 충돌을 감지합니다.
PromQL 기준:
avg({__name__="EngineUptime", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <= 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 가동 시간 0은 인스턴스 재시작을 나타냅니다.
평가 간격: 60
보류 기간: 120
복구 기간: 120
- RollbackSegmentHistoryListLength
-
레이블: DBInstanceIdentifier
경보 설명: Aurora 인스턴스의 롤백 세그먼트 기록 목록 길이가 100만 개를 초과할 때 경보가 발생합니다.
의도: CPU 성능 저하를 유발하는 높은 롤백 기록을 감지합니다.
PromQL 기준:
avg({__name__="RollbackSegmentHistoryListLength", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000권장 임곗값: 1000000(쿼리에 포함됨)
임곗값 정당화: 100만 초과는 성능 문제를 일으킵니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- StorageNetworkThroughput
-
레이블: DBClusterIdentifier
경보 설명: Aurora 클러스터의 스토리지 네트워크 처리량이 임곗값을 초과할 때 경보가 발생합니다.
의도: 네트워크 패킷 삭제 위험이 있는 높은 처리량을 감지합니다.
PromQL 기준:
avg({__name__="StorageNetworkThroughput", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 인스턴스 네트워크 용량을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
Route 53
- HealthCheckStatus
-
레이블: HealthCheckId
경보 설명: Route 53 상태 확인에서 비정상 엔드포인트를 보고할 때 경보가 발생합니다.
의도: Route 53 상태 검사기를 사용하여 비정상 엔드포인트를 감지합니다.
PromQL 기준:
avg({__name__="HealthCheckStatus", "@instrumentation.@name"="cloudwatch.aws/route53", HealthCheckId="HC"}) < 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 1 미만은 엔드포인트가 상태 확인에 실패하고 있음을 나타냅니다.
평가 간격: 60
보류 기간: 180
복구 기간: 180
S3
- 4xxErrors
-
레이블: BucketName, FilterId
경보 설명: S3 버킷의 4xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: 비정상적인 클라이언트 오류율을 감지합니다.
PromQL 기준:
avg({__name__="4xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3", BucketName="BUCKET",FilterId="FILTER"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 5% 초과는 설정 또는 액세스 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- 5xxErrors
-
레이블: BucketName, FilterId
경보 설명: S3 버킷의 5xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: 애플리케이션에 영향을 주는 서버 측 오류를 감지합니다.
PromQL 기준:
avg({__name__="5xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3", BucketName="BUCKET",FilterId="FILTER"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 5% 초과는 S3 서비스 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- OperationsFailedReplication
-
레이블: SourceBucket, DestinationBucket, RuleId
경보 설명: 버킷의 S3 복제 작업이 실패할 때 경보가 발생합니다.
의도: 데이터 불일치 위험이 있는 복제 실패를 감지합니다.
PromQL 기준:
max({__name__="OperationsFailedReplication", "@instrumentation.@name"="cloudwatch.aws/s3", SourceBucket="SRC",DestinationBucket="DST",RuleId="RULE"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 실패한 복제에는 조사가 필요합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
S3 객체 Lambda
- 4xxErrors
-
레이블: AccessPointName, DataSourceARN
경보 설명: S3 Object Lambda 액세스 포인트의 4xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: Object Lambda에 대한 비정상적인 클라이언트 오류율을 감지합니다.
PromQL 기준:
avg({__name__="4xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 5% 초과는 설정 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- 5xxErrors
-
레이블: AccessPointName, DataSourceARN
경보 설명: S3 Object Lambda 액세스 포인트의 5xx 오류율이 5%를 초과할 때 경보가 발생합니다.
의도: Object Lambda에서 서버 측 오류를 감지합니다.
PromQL 기준:
avg({__name__="5xxErrors", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 5% 초과는 Lambda 또는 S3 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- LambdaResponse4xx
-
레이블: AccessPointName, DataSourceARN
경보 설명: S3 Object Lambda 액세스 포인트의 Lambda 함수 4xx 응답률이 5%를 초과할 때 경보가 발생합니다.
의도: Lambda 함수 클라이언트 오류를 감지합니다.
PromQL 기준:
avg({__name__="LambdaResponse4xx", "@instrumentation.@name"="cloudwatch.aws/s3objectlambda", AccessPointName="AP",DataSourceARN="ARN"}) > 0.05권장 임곗값: 0.05(쿼리에 포함됨)
임곗값 정당화: 5% 초과는 Lambda 함수 문제를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
SNS
- NumberOfMessagesPublished
-
레이블: TopicName
경보 설명: SNS 주제의 게시된 메시지 수가 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 게시량의 상당한 감소를 감지합니다.
PromQL 기준:
sum({__name__="NumberOfMessagesPublished", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 최소 예상 트래픽을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsDelivered
-
레이블: TopicName
경보 설명: SNS 주제의 전달된 알림 수가 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 알림 전송량의 감소를 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsDelivered", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 최소 예상 전달을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsFailed
-
레이블: TopicName
경보 설명: SNS 주제의 실패한 알림 전송 횟수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 전송 실패를 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsFailed", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 실패율을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsFilteredOut-InvalidAttributes
-
레이블: TopicName
경보 설명: 잘못된 메시지 속성으로 인해 알림이 필터링될 때 경보가 발생합니다.
의도: 잘못된 메시지 속성을 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsFilteredOut-InvalidAttributes", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 잘못된 필터는 잘못된 구성을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsFilteredOut-InvalidMessageBody
-
레이블: TopicName
경보 설명: 잘못된 메시지 본문으로 인해 알림이 필터링될 때 경보가 발생합니다.
의도: 잘못된 메시지 본문을 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsFilteredOut-InvalidMessageBody", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 잘못된 필터는 잘못된 구성을 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsRedrivenToDlq
-
레이블: TopicName
경보 설명: SNS 주제에 대한 알림이 Dead Letter Queue(DLQ)로 전송될 때 경보가 발생합니다.
의도: Dead Letter Queue(DLQ)로 전송된 메시지를 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsRedrivenToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 모든 DLQ 메시지는 전송 문제를 나타냅니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- NumberOfNotificationsFailedToRedriveToDlq
-
레이블: TopicName
경보 설명: SNS 주제에 대한 알림이 Dead Letter Queue(DLQ)로 전송되지 않을 때 경보가 발생합니다.
의도: DLQ 배달 실패를 감지합니다.
PromQL 기준:
sum({__name__="NumberOfNotificationsFailedToRedriveToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: DLQ 실패는 오류 추적 손실을 의미합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- SMSMonthToDateSpentUSD
-
레이블: TopicName
경보 설명: SNS 주제에 대한 SMS 지출이 계정 할당량에 근접할 때 경보가 발생합니다.
의도: 할당량에 근접한 SMS 지출을 감지합니다.
PromQL 기준:
max({__name__="SMSMonthToDateSpentUSD", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 계정 SMS 할당량을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
- SMSSuccessRate
-
레이블: TopicName
경보 설명: SNS 주제의 SMS 전송 성공률이 임곗값 아래로 떨어질 때 경보가 발생합니다.
의도: 실패한 SMS 전송을 감지합니다.
PromQL 기준:
avg({__name__="SMSSuccessRate", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) <THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 전송률을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 300
복구 기간: 300
SQS
- ApproximateAgeOfOldestMessage
-
레이블: QueueName
경보 설명: SQS 대기열의 가장 오래된 메시지 수명이 임곗값을 초과할 때 경보가 발생합니다.
의도: 충분히 빠르게 처리되지 않은 메시지를 감지합니다.
PromQL 기준:
max({__name__="ApproximateAgeOfOldestMessage", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 허용되는 메시지 처리 시간을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- ApproximateNumberOfMessagesNotVisible
-
레이블: QueueName
경보 설명: SQS 대기열의 전송 중 메시지 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 소비자 문제를 나타내는 높은 전송 중 메시지를 감지합니다.
PromQL 기준:
avg({__name__="ApproximateNumberOfMessagesNotVisible", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 처리량을 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- ApproximateNumberOfMessagesVisible
-
레이블: QueueName
경보 설명: SQS 대기열의 표시되는 메시지 수가 임곗값을 초과할 때 경보가 발생합니다.
의도: 느린 소비자를 나타내는 메시지 백로그를 감지합니다.
PromQL 기준:
avg({__name__="ApproximateNumberOfMessagesVisible", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) >THRESHOLD권장 임곗값:
THRESHOLD(쿼리에 포함됨)임곗값 정당화: 예상 대기열 깊이를 기준으로 설정합니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
- NumberOfMessagesSent
-
레이블: QueueName
경보 설명: SQS 대기열로 메시지가 전송되지 않을 때 경보가 발생합니다.
의도: 생산자가 중지한 메시지 전송을 감지합니다.
PromQL 기준:
sum({__name__="NumberOfMessagesSent", "@instrumentation.@name"="cloudwatch.aws/sqs", QueueName="QUEUE"}) <= 0권장 임곗값: 0(쿼리에 포함됨)
임곗값 정당화: 메시지 0개는 생산자 실패를 나타냅니다.
평가 간격: 60
보류 기간: 900
복구 기간: 900
VPN
- TunnelState(VPN 수준)
-
레이블: VpnId
경보 설명: 하나 이상의 VPN 터널이 DOWN 상태일 때 경보가 발생합니다.
의도: DOWN 상태의 터널을 하나 이상 감지합니다.
PromQL 기준:
min({__name__="TunnelState", "@instrumentation.@name"="cloudwatch.aws/vpn", VpnId="VPN"}) < 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 1 미만은 터널이 다운되었음을 의미합니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900
- TunnelState(터널 수준)
-
레이블: TunnelIpAddress
경보 설명: 특정 VPN 터널이 DOWN 상태일 때 경보가 발생합니다.
의도: DOWN 상태의 특정 터널을 감지합니다.
PromQL 기준:
min({__name__="TunnelState", "@instrumentation.@name"="cloudwatch.aws/vpn", TunnelIpAddress="IP"}) < 1권장 임곗값: 1(쿼리에 포함됨)
임곗값 정당화: 1 미만은 터널이 다운되었음을 의미합니다.
평가 간격: 300
보류 기간: 900
복구 기간: 900