教學課程:在 Metrics Advisor 中啟用異常通知
重要
從 2023 年 9 月 20 日起,您將無法建立新的 Metrics Advisor 資源。 Metrics Advisor 服務將于 2026 年 10 月 1 日淘汰。
在本教學課程中,您會了解如何:
- 在 Metrics Advisor 中建立勾點
- 使用 Azure Logic Apps 傳送通知
- 將通知傳送至 Microsoft Teams
- 透過 SMTP 伺服器傳送通知
必要條件
建立 Metrics Advisor 資源
若要探索 Metrics Advisor 的功能,您可能需要 在 Azure 入口網站 中建立 Metrics Advisor 資源 ,以部署您的 Metrics Advisor 實例。
在 Metrics Advisor 中建立勾點
Metrics Advisor 中的勾點是一個橋接器,可讓客戶訂閱計量異常狀況,並透過不同通道傳送通知。 Metrics Advisor 中有四種類型的勾點:
- 電子郵件勾點
- Webhook
- Teams 勾點
- Azure DevOps 勾點
每個攔截類型都會對應至特定通道,該通道會透過該通道收到異常通知。
使用 Azure Logic Apps、Teams 和 SMTP 傳送通知
使用 Azure Logic Apps 傳送電子郵件通知
有兩個常見選項可用來傳送 Metrics Advisor 中支援的電子郵件通知。 其中一個是使用 Webhook 和 Azure Logic Apps 來傳送電子郵件警示,另一個是設定 SMTP 伺服器,並使用它直接傳送電子郵件警示。 本節將著重于第一個選項,對於沒有可用 SMTP 伺服器的客戶來說,這比較容易。
步驟 1: 在 Metrics Advisor 中建立 Webhook
Webhook 是 Metrics Advisor 服務中所有可用資訊的進入點,並在觸發警示時呼叫使用者提供的 API。 所有警示都可以透過 Webhook 傳送。
選取 [計量建議程式] 工作區中的 [攔截] 索引標籤,然後選取 [ 建立勾點 ] 按鈕。 選擇 Web 攔截 的 勾點類型。 填入必要的參數,然後選取 [ 確定 ]。 如需詳細步驟,請參閱 建立 Webhook 。
端點有一個額外的參數 需要填寫,這可以在完成下面的步驟 3 之後完成。
步驟 2: 建立取用邏輯應用程式資源
在 Azure 入口網站中,依照建立範例使用量邏輯應用程式工作流程中的指示,建立具有空白工作流程的使用量邏輯應用程式資源。 當您看到工作流程設計工具開啟時,請回到本教學課程。
步驟 3: 新增收到 HTTP 要求時的觸發程式
Azure Logic Apps 會使用各種動作來觸發定義的工作流程。 針對此使用案例,其使用命名為收到 HTTP 要求時的觸發程序。
在 [收到 HTTP 要求時] 對話方塊中 ,選取 [ 使用範例承載來產生架構 ]。
將下列範例 JSON 複製到文字方塊中,然後選取 [ 完成 ]。
{ "properties": { "value": { "items": { "properties": { "alertInfo": { "properties": { "alertId": { "type": "string" }, "anomalyAlertingConfigurationId": { "type": "string" }, "createdTime": { "type": "string" }, "modifiedTime": { "type": "string" }, "timestamp": { "type": "string" } }, "type": "object" }, "alertType": { "type": "string" }, "callBackUrl": { "type": "string" }, "hookId": { "type": "string" } }, "required": [ "hookId", "alertType", "alertInfo", "callBackUrl" ], "type": "object" }, "type": "array" } }, "type": "object" }
選擇方法為 'POST',然後選取 [ 儲存 ]。 您現在可以看到 HTTP 要求觸發程式的 URL。 選取複製圖示以複製它,並將它填回 步驟 1 中的端點 。
步驟 4: 使用 'HTTP' 動作新增下一個步驟
透過 Webhook 推送的訊號只包含時間戳記、alertID、configurationID 等有限資訊。需要使用訊號中提供的回呼 URL 來查詢詳細資訊。 此步驟是查詢詳細的警示資訊。
選擇 'GET' 的方法
從 [URI] 中的 [動態內容] 清單中選取 [callBackURL]。
在 'Headers' 中輸入 'Content-Type' 的索引鍵,並輸入 'application/json' 的值
在 [標頭] 中輸入 'x-api-key' 的索引鍵,然後在您的 Metrics Advisor 工作區中按一下 [API 金鑰] 索引標籤來取得此金鑰。 此步驟是確保工作流程有足夠的 API 呼叫許可權。
步驟 5: 將下一個步驟新增至 「剖析 JSON」
您需要剖析 API 的回應,以便更輕鬆地格式化電子郵件內容。
注意
本教學課程只共用快速範例,最後的電子郵件格式必須進一步設計。
- 從 [內容] 中的 [動態內容] 清單中選取 [本文]
- 選取 [使用範例承載來產生架構 ]。 將下列範例 JSON 複製到文字方塊中,然後選取 [ 完成 ]。
{
"properties": {
"@@nextLink": {},
"value": {
"items": {
"properties": {
"properties": {
"properties": {
"IncidentSeverity": {
"type": "string"
},
"IncidentStatus": {
"type": "string"
}
},
"type": "object"
},
"rootNode": {
"properties": {
"createdTime": {
"type": "string"
},
"detectConfigGuid": {
"type": "string"
},
"dimensions": {
"properties": {
},
"type": "object"
},
"metricGuid": {
"type": "string"
},
"modifiedTime": {
"type": "string"
},
"properties": {
"properties": {
"AnomalySeverity": {
"type": "string"
},
"ExpectedValue": {}
},
"type": "object"
},
"seriesId": {
"type": "string"
},
"timestamp": {
"type": "string"
},
"value": {
"type": "number"
}
},
"type": "object"
}
},
"required": [
"rootNode",
"properties"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
步驟 6: 將下一個步驟新增至 「建立 HTML 資料表」
不過,根據您的案例,API 呼叫已傳回一堆資訊,並非所有資訊都很有用。 選擇您關心的專案,並想要包含在警示電子郵件中。
以下是 HTML 資料表的範例,其中選擇要包含在警示電子郵件中的 'timestamp'、'metricGUID' 和 'dimension'。
步驟 7: 新增最後一個步驟以「傳送電子郵件」
有數個選項可以傳送電子郵件,包括 Microsoft 託管和協力廠商供應專案。 客戶可能需要有其所選選項的租使用者/帳戶。 例如,選擇 [Office 365 Outlook] 作為伺服器時。 登入程式將會進行幫浦,以建置連線和授權。 系統會建立 API 連線,以使用電子郵件伺服器傳送警示。
在電子郵件中填入您想要包含至 「內文」、「主旨」的內容,並在 「收件者」中填入電子郵件地址。
下一步
請前進到下一篇文章,以瞭解如何建立。