你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
概述
本文提供了有关如何使用 Bicep 文件为 Azure 服务运行状况通知创建活动日志警报的分步指南。 目的是自动创建警报,以在 Azure 将服务健康事件(例如事故、计划内维护或健康建议)发布到你的订阅活动日志时通知你。
Bicep 是一种特定于域的语言 (DSL),使用声明性语法来部署 Azure 资源。 它提供简明的语法、可靠的类型安全性以及对代码重用的支持。 Bicep 会针对你的 Azure 基础结构即代码解决方案提供最佳创作体验。
服务运行状况通知存储在 Azure 活动日志中。 鉴于活动日志中存储的信息量可能很大,因此有一个单独的用户界面,以便更轻松地查看和设置有关服务运行状况通知的警报。
当 Azure 将服务运行状况通知发送到 Azure 订阅时,可以收到警报。 可以基于以下内容配置警报:
- 服务运行状况通知的类别(服务问题、计划内维护、运行状况公告)。
- 受影响的订阅。
- 受影响的服务。
- 受影响的区域。
注意
服务运行状况通知不会发送有关资源运行状况事件的警报。
还可以配置向其发送警报的人员:
- 选择现有操作组。
- 创建新操作组(可以用于将来的警报)。
若要了解有关操作组的详细信息,请参阅创建和管理操作组。
设置 Bicep 文件
先决条件
- 如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
- 若要从本地计算机运行命令,请安装 Azure CLI 或 Azure PowerShell 模块。 有关详细信息,请参阅安装 Azure CLI 和安装 Azure PowerShell。
1.查看 Bicep 文件
以下 Bicep 文件将创建以电子邮件为目标的操作组,并为目标订阅启用所有服务运行状况通知。 将此 Bicep 保存为 CreateServiceHealthAlert.bicep。
param actionGroups_name string = 'SubHealth'
param activityLogAlerts_name string = 'ServiceHealthActivityLogAlert'
param emailAddress string
var alertScope = '/subscriptions/${subscription().subscriptionId}'
resource actionGroups_name_resource 'microsoft.insights/actionGroups@2019-06-01' = {
name: actionGroups_name
___location: 'Global'
properties: {
groupShortName: actionGroups_name
enabled: true
emailReceivers: [
{
name: actionGroups_name
emailAddress: emailAddress
}
]
smsReceivers: []
webhookReceivers: []
}
}
resource activityLogAlerts_name_resource 'microsoft.insights/activityLogAlerts@2017-04-01' = {
name: activityLogAlerts_name
___location: 'Global'
properties: {
scopes: [
alertScope
]
condition: {
allOf: [
{
field: 'category'
equals: 'ServiceHealth'
}
{
field: 'properties.incidentType'
equals: 'Incident'
}
]
}
actions: {
actionGroups: [
{
actionGroupId: actionGroups_name_resource.id
webhookProperties: {}
}
]
}
enabled: true
}
}
Bicep 文件定义两个资源:
2.部署 Bicep 文件
使用 Azure CLI 和 Azure PowerShell 来部署该 Bicep 文件。 将 资源组 和 emailAddress 的示例值替换为适合你的环境的值:
az login
az deployment group create --name CreateServiceHealthAlert --resource-group my-resource-group --template-file CreateServiceHealthAlert.bicep --parameters emailAddress='user@contoso.com'
3.验证部署
使用以下命令之一验证工作区是否已创建。 将 资源组 的示例值替换为你使用的值,如下所示:
az monitor activity-log alert show --resource-group my-resource-group --name ServiceHealthActivityLogAlert
4. 清理资源
如果打算继续使用后续的快速入门和教程,则可能需要保留这些资源。 如果不再需要资源组,可以将其删除,这将删除警报规则和相关的资源。 如果需要使用 Azure CLI 或 Azure PowerShell 删除资源组,请使用以下命令:
az group delete --name my-resource-group
后续步骤
- 了解设置 Azure 服务运行状况警报的最佳做法。
- 了解如何为 Azure 服务运行状况设置移动推送通知。
- 了解如何为现有问题管理系统配置 Webhook 通知。
- 了解服务运行状况通知。
- 了解通知速率限制。
- 查看活动日志警报 webhook 架构。
- 获取活动日志警报概述,了解如何接收警报。
- 详细了解操作组。