快速入門:使用 ARM 範本,建立服務通知的服務健康狀態警示
本文說明如何使用 Azure Resource Manager 範本 (ARM 範本) 為服務健康情況通知設定服務健康情況警示。
Azure Resource Manager 範本是一個 JavaScript 物件標記法 (JSON) 檔案,會定義專案的基礎結構和設定。 範本使用宣告式語法。 您可以描述預期的部署,而不需要撰寫程式設計命令順序來建立部署。
服務健康情況通知儲存在 Azure 活動記錄中。 由於活動記錄中可能儲存大量的資訊,因此有個別的使用者介面,可讓您更輕鬆地檢視及設定服務健康情況通知的警示。
您可以在 Azure 傳送服務健康狀態通知到您的 Azure 訂用帳戶時接收警示。 您可以針對下列設定警示:
- 服務健康情況通知的類別 (服務問題、計劃性維護或健康情況摘要報告)。
- 受影響的訂閱。
- 受影響的服務。
- 受影響的區域。
注意
服務健康情況通知不會傳送關於資源健康情況事件的警示。
您也可以設定應傳送警示的對象:
- 選取現有的動作群組。
- 建立新動作群組 (可用於未來的警示)。
若要深入了解動作群組,請參閱建立及管理動作群組。
必要條件
- 如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶。
- 若要從您的本機電腦執行命令,請安裝 Azure CLI 或 Azure PowerShell 模組。 如需詳細資訊,請參閱安裝 Azure CLI和安裝 Azure PowerShell。
檢閱範本
以下範本會建立具有電子郵件目標的動作群組,並啟用目標訂用帳戶的所有服務健康情況通知。 將此範本儲存為 CreateServiceHealthAlert.json。
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"actionGroups_name": {
"type": "string",
"defaultValue": "SubHealth"
},
"activityLogAlerts_name": {
"type": "string",
"defaultValue": "ServiceHealthActivityLogAlert"
},
"emailAddress": {
"type": "string"
}
},
"variables": {
"alertScope": "[format('/subscriptions/{0}', subscription().subscriptionId)]"
},
"resources": [
{
"type": "microsoft.insights/actionGroups",
"apiVersion": "2019-06-01",
"name": "[parameters('actionGroups_name')]",
"location": "Global",
"properties": {
"groupShortName": "[parameters('actionGroups_name')]",
"enabled": true,
"emailReceivers": [
{
"name": "[parameters('actionGroups_name')]",
"emailAddress": "[parameters('emailAddress')]"
}
],
"smsReceivers": [],
"webhookReceivers": []
}
},
{
"type": "microsoft.insights/activityLogAlerts",
"apiVersion": "2017-04-01",
"name": "[parameters('activityLogAlerts_name')]",
"location": "Global",
"properties": {
"scopes": [
"[variables('alertScope')]"
],
"condition": {
"allOf": [
{
"field": "category",
"equals": "ServiceHealth"
},
{
"field": "properties.incidentType",
"equals": "Incident"
}
]
},
"actions": {
"actionGroups": [
{
"actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
"webhookProperties": {}
}
]
},
"enabled": true
},
"dependsOn": [
"[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
]
}
]
}
此範本會定義兩個資源:
部署範本
使用部署 ARM 範本來,例如使用 CLI 和 PowerShell 的下列範例。 以適用於您環境的適當值取代 Resource Group 和 emailAddress 的範例值。
az login
az deployment group create --name CreateServiceHealthAlert --resource-group my-resource-group --template-file CreateServiceHealthAlert.json --parameters emailAddress='user@contoso.com'
驗證部署
使用下列其中一個命令驗證已建立的工作區。 以您在上面使用的值取代 Resource Group 的範例值。
az monitor activity-log alert show --resource-group my-resource-group --name ServiceHealthActivityLogAlert
清除資源
如果您打算繼續進行後續的快速入門和教學課程,您可以讓這些資源留在原處。 如果不再需要,請刪除資源群組,這會刪除警示規則和相關資源。 若要使用 Azure CLI 或 Azure PowerShell 刪除資源群組
az group delete --name my-resource-group
下一步
- 深入了解設定 Azure 服務健康狀態警示的最佳做法。
- 了解如何設定 Azure 服務健康狀態的行動推播通知。
- 了解如何設定現有問題管理系統的 Webhook 通知。
- 深入了解服務健康狀態通知。
- 深入了解通知速率限制。
- 檢閱服務健康情況警示 Webhook 結構描述。
- 取得服務健康狀態警示的概觀,並了解如何收到警示。
- 深入了解動作群組。