本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon CloudWatch 異常偵測為自訂指標建立警示
由拉姆·坎達斯瓦米(AWS)和拉希姆吉瓦尼(AWS)創建
環境:生產 | 技術:管理與治理;營運 DevOps;雲端原生 | AWS 服務:Amazon CloudWatch |
Summary
在 Amazon Web Services (AWS) 雲端上,您可以使用 Amazon 建立警示 CloudWatch 來監控指標並傳送通知,或在超出閾值時自動進行變更。
為了避免受到靜態臨界值的限制,您可以根據過去的模式建立警示,並在特定測量結果在正常作業時段之外時通知您。例如,您可以從 Amazon API Gateway 監控 API 的回應時間,並接收有關異常情況的通知,以防止您達成服務等級協議 (SLA)。
此模式說明如何針對自訂量度使用 CloudWatch 異常偵測。該模式向您展示如何在 Amazon CloudWatch 日誌洞見中建立自訂指標,或使用 AWS Lambda 函數發佈自訂指標,然後使用 Amazon 簡單通知服務 (Amazon SNS) 設定異常偵測並建立通知。
先決條件和限制
先決條件
作用中的 AWS 帳戶
設定為傳送電子郵件通知的現有 SNS 主題。如需這方面的詳細資訊,請參閱 Amazon SNS 文件中的開始使用 Amazon SNS。
使用CloudWatch 記錄設定的現有應用程式。
限制
CloudWatch 度量不支援毫秒的時間間隔。如需有關一般和自訂指標精細度的詳細資訊,請參閱 Amazon CloudWatch 常見問答集
。
架構
該圖顯示以下工作流程:
使用由記錄建立和更新之指標的 CloudWatch 記錄會串流至 CloudWatch。
警示會根據閾值啟動,並將警示傳送至 SNS 主題。
Amazon SNS 會傳送電子郵件通知給您。
技術, 堆
雲觀察
AWS Lambda
Amazon SNS
工具
Amazon Cloudwatch — CloudWatch 提供可靠、可擴展且靈活的監控解決方案。
AWS Lambda — L ambda 是一種運算服務,可協助您執行程式碼,而無需佈建或管理伺服器。
Amazon SNS — 亞馬遜簡單通知服務 (Amazon SNS) 是一種受管服務,可提供從發佈者到訂閱者的訊息傳遞。
史诗
任務 | 描述 | 所需技能 |
---|---|---|
選項 1-使用 Lambda 函數建立自訂指標。 | 下載 執行 Lambda 函數之後,您可以登入 AWS 管理主控台、開啟主控 CloudWatch 台,並在已發佈的命名空間下提供已發佈的指標。 | DevOps 工程師, AWS DevOps |
選項 2 — 從 CloudWatch 日誌組創建自定義指標。 | 登入 AWS 管理主控台,開啟主 CloudWatch 控台,然後選擇日誌群組。選擇您要為其建立測量結果的日誌群組。 選擇「動作」,然後選擇「建立量度篩選」 在「篩選模式」中,輸入您要使用的濾鏡模式。如需詳細資訊,請參閱 CloudWatch 文件中的篩選器和模式語法。 若要測試篩選器模式,請在「測試模式」下輸入一或多個記錄事件。每個日誌事件都必須在一行內,因為 Log event messages (日誌事件訊息) 方塊中使用換行來分隔日誌事件。測試模式之後,您可以在「度量詳細資料」下輸入指標的名稱和值。 如需建立自訂指標的詳細資訊和步驟,請參閱 CloudWatch 文件中的為記錄群組建立指標篩選器。 | DevOps 工程師, AWS DevOps |
為您的自定義指標創建警報。 | 在 CloudWatch 主控台上,選擇 [警示],然後選擇 [建立鬧鐘]。選擇選取測量結果,然後在搜尋方塊中輸入您先前建立的測量結果名稱。選擇圖形指標索引標籤,並根據您的需求設定選項。 在「條件」下,選擇「異常偵測」而非「靜態閾值」。這會根據兩個標準預設偏差向您展示區帶。您可以設定閾值並根據您的需求進行調整。 選擇下一步。 注意:頻帶是動態的,取決於資料點的品質。當您開始彙總更多資料時,區帶和臨界值會自動更新。 | DevOps 工程師, AWS DevOps |
設定 SNS 通知。 | 在 [通知] 下,選擇警示處於狀態、 若要讓警示針對相同的警示狀態或不同警示狀態傳送多個通知,請選擇 Add notification (新增通知)。選擇下一步。輸入警示的名稱與說明。名稱只能包含 ASCII 字元。然後選擇下一步。 在 [預覽並建立] 底下,確認資訊和條件正確無誤,然後選擇 [建立鬧鐘]。 | DevOps 工程師, AWS DevOps |
相關資源
附件
若要存取與此文件相關聯的其他內容,請解壓縮下列檔案:attachment.zip