View a markdown version of this page

建議的 PromQL 警示 - Amazon CloudWatch

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

建議的 PromQL 警示

使用這些 PromQL 警示做為傳統建議警示的同等項目。它們使用 PromQL 即時查詢來監控相同的指標,這些查詢會根據透過 CloudWatch OTLP 端點擷取的指標進行評估。

PromQL 警示EvaluationCriteria搭配 使用PromQLCriteria。與傳統指標警示不同,閾值會直接內嵌在 PromQL 查詢表達式中。

  • 擱置期間 – 在警示轉換為 ALARM 狀態之前,時間序列必須持續違反的持續時間,以秒為單位。

  • 復原期間 – 在警示傳回 OK 狀態之前,所有時間序列必須停止違規的持續時間,以秒為單位。

  • 評估間隔 – CloudWatch 執行 PromQL 查詢的頻率,以秒為單位。

注意

這些警示需要透過 CloudWatch OTLP 端點發佈的指標。如需詳細資訊,請參閱PromQL 警示

您可以使用 部署這些警示 AWS CloudFormation。使用 AWS::CloudWatch::Alarm 資源上的 EvaluationCriteriaPromQLCriteria 屬性。

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 延遲超過 2500 毫秒時發出警示。

目的:偵測影響使用者體驗的高 p90 延遲。

PromQL 條件: histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiName="your-api-name",Stage="your-stage"}) > 2500

建議的閾值:2500 (內嵌在查詢中)

閾值對正:p90 延遲超過 2500 毫秒表示大多數請求的回應時間降低。

評估間隔:60

待處理期間:300

復原期間:300

Count (計數)

標籤: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、階段

警示描述:當 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、階段

警示描述:當 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、階段

警示描述:當 HTTP API 階段的 p90 延遲超過 2500 毫秒時發出警示。

目的:偵測 HTTP API 端點上的高 p90 延遲。

PromQL 條件: histogram_quantile(0.9, {__name__="Latency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2500

建議的閾值:2500 (內嵌在查詢中)

閾值對正:超過 2500 毫秒的 p90 延遲表示回應時間降低。

評估間隔:60

待處理期間:300

復原期間:300

IntegrationLatency

標籤:ApiId、階段

警示描述:當 HTTP API 階段的 p90 整合延遲超過 2000 毫秒時發出警示。

目的:偵測影響回應時間的高後端整合延遲。

PromQL 條件: histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000

建議的閾值:2000 (內嵌在查詢中)

閾值對正:p90 整合延遲超過 2000 毫秒表示後端速度變慢。

評估間隔:60

待處理期間:300

復原期間:300

Count (計數)

標籤:ApiId、階段

警示描述:當總請求計數低於 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、階段

警示描述:當 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、階段

警示描述:當 WebSocket API 階段的平均執行錯誤率超過 5% 時發出警示。

目的:偵測 WebSocket APIs上的高伺服器端執行錯誤率。

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、階段

警示描述:當 WebSocket API 階段的 p90 整合延遲超過 2000 毫秒時發出警示。

目的:偵測 WebSocket API 路由上的高後端整合延遲。

PromQL 條件: histogram_quantile(0.9, {__name__="IntegrationLatency", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) > 2000

建議的閾值:2000 (內嵌在查詢中)

閾值對正:p90 整合延遲超過 2000 毫秒表示後端速度變慢。

評估間隔:60

待處理期間:300

復原期間:300

MessageCount

標籤:ApiId、階段

警示描述:當總訊息計數低於 WebSocket API 階段的預期基準時發出警示。

目的:偵測可能表示連線或路由問題的低訊息量。

PromQL 條件: sum({__name__="MessageCount", "@instrumentation.@name"="cloudwatch.aws/apigateway", ApiId="your-api-id",Stage="your-stage"}) < THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據您預期的訊息量設定 ,以偵測非預期的下降。

評估間隔:60

待處理期間:600

復原期間:300

GroupInServiceCapacity

標籤:AutoScalingGroupName

警示描述:當 Auto Scaling 群組的平均服務中容量低於預期最小值時發出警示。

目的:偵測因啟動失敗或終止的執行個體而導致的低可用性。

PromQL 條件: avg({__name__="GroupInServiceCapacity", "@instrumentation.@name"="cloudwatch.aws/autoscaling", AutoScalingGroupName="your-auto-scaling-group-name"}) < THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據您所需的最小容量來設定 ,以偵測啟動失敗或執行個體不足。

評估間隔:60

待處理期間:600

復原期間:600

DaysToExpiry

標籤:CertificateArn

警示描述:憑證過期天數下限降至 44 天或更少時發出警示。

目的:主動憑證過期提醒,以允許續約的時間。

PromQL 條件: min({__name__="DaysToExpiry", "@instrumentation.@name"="cloudwatch.aws/certificatemanager", CertificateArn="your-certificate-arn"}) <= 44

建議的閾值:44 (內嵌在查詢中)

閾值對正:在憑證過期前提供足夠的前置時間,以完成續約程序。

評估間隔:86400

待處理期間:86400

復原期間:86400

5xxErrorRate

標籤: DistributionId

警示描述:當平均 5xx 錯誤率超過 CloudFront 分佈的閾值時發出警示。

目的:偵測影響內容交付的高原始伺服器或 CloudFront 錯誤率。

PromQL 條件: avg({__name__="5xxErrorRate", "@instrumentation.@name"="cloudwatch.aws/cloudfront", DistributionId="your-distribution-id"}) > THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據內容交付的可接受錯誤率進行設定。

評估間隔:60

待處理期間:300

復原期間:300

OriginLatency

標籤: DistributionId

警示描述:當 p90 原始伺服器延遲超過 CloudFront 分佈的閾值時發出警示。

目的:偵測影響內容交付效能的高原始伺服器回應延遲。

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 函數中會影響請求處理的執行時間失敗。

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

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

警示描述:當聯合限流事件超過使用者集區身分提供者的閾值時發出警示。

目的:偵測可能阻止聯合登入的聯合限流。

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

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、操作

警示描述:當平均成功請求延遲超過資料表操作的閾值時發出警示。

目的:偵測影響應用程式效能的 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

警示描述:調節放置記錄計數超過資料表閾值時的警示。

目的:偵測可能導致串流操作資料遺失的限流放置。

PromQL 條件: max({__name__="ThrottledPutRecordCount", "@instrumentation.@name"="cloudwatch.aws/dynamodb", TableName="your-table-name",DelegatedOperation="your-operation"}) > THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據串流放置操作可接受的調節計數進行設定。

評估間隔: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

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 或更高表示磁碟區已停止輸入/輸出,需要立即調查。

評估間隔:60

待處理期間:600

復原期間:600

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 (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

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

警示描述:當 HTTP 5XX 錯誤計數超過 ECS 服務的閾值時發出警示。

目的:偵測高伺服器端錯誤計數。

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

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 服務的執行中任務計數下降至零時發出警示。

目的:偵測何時沒有任務正在執行。

PromQL 條件: avg({__name__="RunningTaskCount", "@instrumentation.@name"="cloudwatch.aws/ecs-containerinsights", ClusterName="your-cluster-name",ServiceName="your-service-name"}) <= 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

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

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 檔案系統的爆量額度餘額降至零時發出警示。

目的:偵測耗盡的爆量額度,導致輸送量變慢。

PromQL 條件: avg({__name__="BurstCreditBalance", "@instrumentation.@name"="cloudwatch.aws/efs", FileSystemId="your-filesystem-id"}) <= 0

建議的閾值:0 (內嵌在查詢中)

閾值對正:零點會導致輸送量降低。

評估間隔:60

待處理期間:900

復原期間:900

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

警示描述:Pod CPU 使用率超過其限制的 80% 時發出警示。

目的:偵測接近 CPU 限制的 Pod。

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

警示描述:Pod 記憶體使用率超過其限制的 80% 時發出警示。

目的:偵測接近記憶體限制的 Pod。

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

CPUUtilization

標籤:CacheClusterId、CacheNodeId

警示描述:當平均 CPU 使用率超過 ElastiCache 節點的閾值時發出警示。

目的:偵測執行個體中的高 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

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

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

警示描述:當失敗的呼叫無法傳送至無效字母佇列時發出警示。

目的:偵測 DLQ 交付失敗。

PromQL 條件: sum({__name__="InvocationsFailedToBeSentToDeadLetterCount", "@instrumentation.@name"="cloudwatch.aws/scheduler"}) > 0

建議的閾值:0 (內嵌在查詢中)

閾值對正:DLQ 交付失敗表示遺失錯誤資訊。

評估間隔:60

待處理期間:900

復原期間:900

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

警示描述:當 GetRecords 成功率低於 Kinesis 串流的閾值時發出警示。

目的:偵測消費者擷取失敗。

PromQL 條件: avg({__name__="GetRecords.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) < THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據預期的成功率進行設定。

評估間隔:60

待處理期間:300

復原期間:300

PutRecord.Success

標籤:StreamName

警示描述:PutRecord 成功率低於 Kinesis 串流閾值時發出警示。

目的:偵測生產者擷取失敗。

PromQL 條件: avg({__name__="PutRecord.Success", "@instrumentation.@name"="cloudwatch.aws/kinesis", StreamName="your-stream-name"}) < THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據預期的成功率設定 。

評估間隔:60

待處理期間:300

復原期間:300

PutRecords.FailedRecords

標籤:StreamName

警示描述:當批次放置操作產生 Kinesis 串流的失敗記錄時發出警示。

目的:偵測批次放置失敗。

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

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

Duration (持續時間)

標籤:FunctionName

警示描述:當 p90 函數持續時間超過 Lambda 函數的閾值時發出警示。

目的:偵測長時間執行的函數叫用。

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

memory_utilization

標籤:function_name

警示描述:當 Lambda 函數的平均記憶體使用率超過 90% 時發出警示。

目的:偵測接近設定記憶體限制的函數。

PromQL 條件: avg({__name__="memory_utilization", "@instrumentation.@name"="cloudwatch.aws/lambda-insights", function_name="your-function-name"}) > 90

建議的閾值:90 (內嵌在查詢中)

閾值對正:記憶體out-of-memory故障的風險超過 90%。

評估間隔:60

待處理期間:600

復原期間:600

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

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

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

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 執行個體閾值時的警示。

目的:防止out-of-memory導致連線遭拒。

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

MaximumUsedTransactionIDs

標籤:DBInstanceIdentifier

警示描述:RDS 執行個體使用的交易 IDs上限超過 10 億時發出警示。

目的:防止 PostgreSQL 交易 ID 包裝。

PromQL 條件: avg({__name__="MaximumUsedTransactionIDs", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000000

建議的閾值:1000000000 (內嵌在查詢中)

閾值對正:10 億表示接近包裝危險。

評估間隔:60

待處理期間:60

復原期間:60

ReadLatency

標籤:DBInstanceIdentifier

警示描述:p90 讀取延遲超過 RDS 執行個體閾值時的警示。

目的:偵測高讀取延遲,指出磁碟問題。

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

警示描述:p90 寫入延遲超過 RDS 執行個體閾值時的警示。

目的:偵測高寫入延遲,指出磁碟問題。

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% 表示磁碟輸入/輸出過多。

評估間隔:60

待處理期間:600

復原期間:600

EngineUptime

標籤:DBClusterIdentifier

警示描述:當引擎運作時間降至零時發出警示,表示 Aurora 寫入器重新啟動。

目的:偵測 Aurora 寫入器執行個體停機時間或當機。

PromQL 條件: avg({__name__="EngineUptime", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) <= 0

建議的閾值:0 (內嵌在查詢中)

閾值對正:零執行時間表示執行個體重新啟動。

評估間隔:60

待處理期間:120

復原期間:120

RollbackSegmentHistoryListLength

標籤:DBInstanceIdentifier

警示描述:當 Aurora 執行個體的復原區段歷史記錄清單長度超過 100 萬時發出警示。

目的:偵測導致 CPU 降級的高轉返歷史記錄。

PromQL 條件: avg({__name__="RollbackSegmentHistoryListLength", "@instrumentation.@name"="cloudwatch.aws/rds", DBInstanceIdentifier="DB"}) > 1000000

建議的閾值:1000000 (內嵌在查詢中)

閾值對正:超過 1M 會導致效能問題。

評估間隔:60

待處理期間:300

復原期間:300

StorageNetworkThroughput

標籤:DBClusterIdentifier

警示描述:當儲存網路輸送量超過 Aurora 叢集的閾值時發出警示。

目的:偵測高輸送量風險的網路封包捨棄。

PromQL 條件: avg({__name__="StorageNetworkThroughput", "@instrumentation.@name"="cloudwatch.aws/rds", DBClusterIdentifier="CLUSTER"}) > THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據執行個體網路容量設定 。

評估間隔:60

待處理期間:300

復原期間:300

HealthCheckStatus

標籤:HealthCheckId

警示描述:Route 53 運作狀態檢查報告運作狀態不佳的端點時發出警示。

目的:使用 Route 53 運作狀態檢查程式偵測運作狀態不佳的端點。

PromQL 條件: avg({__name__="HealthCheckStatus", "@instrumentation.@name"="cloudwatch.aws/route53", HealthCheckId="HC"}) < 1

建議的閾值:1 (內嵌在查詢中)

閾值對正:低於 1 表示端點運作狀態檢查失敗。

評估間隔:60

待處理期間:180

復原期間:180

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

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

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 主題的無效字母佇列時發出警示。

目的:偵測傳送至無效字母佇列的訊息。

PromQL 條件: sum({__name__="NumberOfNotificationsRedrivenToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

建議的閾值:0 (內嵌在查詢中)

閾值對正:任何 DLQ 訊息都會指出交付問題。

評估間隔:60

待處理期間:300

復原期間:300

NumberOfNotificationsFailedToRedriveToDlq

標籤:TopicName

警示描述:當通知無法傳送至 SNS 主題的無效字母佇列時發出警示。

目的:偵測 DLQ 交付失敗。

PromQL 條件: sum({__name__="NumberOfNotificationsFailedToRedriveToDlq", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > 0

建議的閾值:0 (內嵌在查詢中)

閾值對正:失敗的 DLQ 表示遺失錯誤追蹤。

評估間隔:60

待處理期間:300

復原期間:300

SMSMonthToDateSpentUSD

標籤:TopicName

警示描述:SMS 花費接近 SNS 主題的帳戶配額時發出警示。

目的:偵測接近配額的 SMS 支出。

PromQL 條件: max({__name__="SMSMonthToDateSpentUSD", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) > THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據帳戶 SMS 配額設定 。

評估間隔:60

待處理期間:300

復原期間:300

SMSSuccessRate

標籤:TopicName

警示描述:當簡訊交付成功率低於 SNS 主題的閾值時發出警示。

目的:偵測簡訊傳送失敗。

PromQL 條件: avg({__name__="SMSSuccessRate", "@instrumentation.@name"="cloudwatch.aws/sns", TopicName="TOPIC"}) < THRESHOLD

建議的閾值:THRESHOLD (內嵌在查詢中)

閾值對正:根據可接受的交付率設定 。

評估間隔:60

待處理期間:300

復原期間:300

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 (內嵌在查詢中)

閾值對正:零訊息表示生產者失敗。

評估間隔:60

待處理期間:900

復原期間:900

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