根據 Metrics Insights 查詢建立 CloudWatch 警示 - Amazon CloudWatch

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

根據 Metrics Insights 查詢建立 CloudWatch 警示

CloudWatch Metrics Insights 查詢可協助您使用類似 SQL 的語法大規模查詢指標。您可以在任何 Metrics Insights 查詢上建立警示,包括傳回多個時間序列的查詢。此功能可大幅擴展您的監控選項。當您根據 Metrics Insights 查詢建立警示時,警示會在受監控群組中新增或移除資源時自動調整。建立警示一次,符合查詢定義和篩選條件的任何資源都會在其對應的指標可用時加入警示監控範圍。對於多時間序列查詢,每個傳回的時間序列都會成為警示的貢獻者,允許更精細和動態的監控。

以下是 CloudWatch Metrics Insights 警示的兩個主要使用案例:

  • 極端值偵測和彙總監控

    在傳回單一彙總時間序列的 Metrics Insights 查詢上建立警示。此方法非常適合用來監控基礎設施或應用程式彙總指標的動態警示。例如,您可以監控所有執行個體的最大 CPU 使用率,並在擴展機群時自動調整警示。

    若要建立彙總監控警示,請使用此查詢結構:

    SELECT FUNCTION(metricName) FROM SCHEMA(...) WHERE condition;
  • 每個資源機群監控

    建立可監控多個時間序列的警示,其中每個時間序列都會以自己的狀態做為參與者。警示會在任何參與者進入 ALARM 狀態時啟動,觸發資源特定的動作。例如,監控多個 RDS 執行個體的資料庫連線,以防止連線遭拒。

    若要監控多個時間序列,請使用此查詢結構:

    SELECT AVG(DatabaseConnections) FROM AWS/RDS WHERE condition GROUP BY DBInstanceIdentifier ORDER BY AVG() DESC;

    建立多時間序列警示時,您必須在查詢中包含兩個索引鍵子句:

    • 定義如何建構時間序列並決定查詢將產生多少時間序列的GROUP BY子句

    • ORDER BY句,可建立指標的確定性排序,讓警示能夠先評估最重要的訊號

    這些子句對於適當的警示評估至關重要。GROUP BY 子句會將您的資料分割為不同的時間序列 (例如,依執行個體 ID),而子ORDER BY句可確保在警示評估期間一致且優先地處理這些時間序列。

根據 Metrics Insights 查詢套用至警示的限制

使用 CloudWatch Metrics Insights 警示時,請注意這些功能限制:

  • 每個區域每個帳戶使用此語法的 200 個警示

  • 只有最新的 3 小時資料可用於評估警示的條件。不過,您可以在警示的詳細資訊頁面圖表上視覺化最多兩週的資料

  • 評估多個時間序列的警示會將並行轉換速率限制為 100

  • Metrics Insights 對分析或傳回的序列數量上限適用

如需 CloudWatch 服務配額和限制的詳細資訊,請參閱 CloudWatch 服務配額

先決條件

建立 CloudWatch Metrics Insights 警示之前,請確定您有:

  • 建立和管理 CloudWatch 警示的適當 IAM 許可

  • AWS 帳戶中您要監控之資源的可用指標

  • 基本了解 SQL 查詢語法