您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.

部署 Azure Monitor - 警报和自动化操作

本文是有关配置 Azure Monitor 的建议方案的一部分。 其中提供了有关 Azure Monitor 中的警报(主动通知你在监视数据中发现的重要数据或模式)的指导。 可以在 Azure 门户中查看警报,让警报发送主动通知,或者让警报启动一些自动化操作来尝试修正问题。

警报策略

警报策略针对你要为不同方案创建的警报规则类型定义组织标准、定义创建警报后对其进行分类和管理的方式,以及为了响应警报而要采取的自动化操作和通知。 定义警报策略有助于定义警报规则的配置(包括警报严重性和操作组)。

请参阅成功警报策略,了解在开发警报策略时应考虑的因素。

警报规则类型

Azure Monitor 中的警报由警报规则(必须创建这些规则)创建的。 有关建议的警报规则的指导,请参阅每个 Azure 服务的监视文档。 默认情况下,Azure Monitor 没有任何警报规则。

有多种类型的警报规则由其使用的数据类型定义。 每种类型都有不同的功能和不同的成本。 应遵循的基本策略是使用能够提供所需逻辑但成本最低的警报规则类型。

警报严重性

每个警报规则根据下表定义它所创建的警报的严重性。 Azure 门户中的警报已按级别分组,因此你可以统一管理类似的警报,并快速识别紧急程度最高的警报。

Level 名称 说明
Sev 0 严重 服务或应用程序不再可用,或性能严重下降。 需要立即引以关注。
Sev 1 错误 性能下降,或者应用程序或服务的某些功能不再可用。 需要引以关注,但不需要立即关注。
Sev 2 警告 问题当前不会导致性能下降或可用性丧失,但如果不予以解决,有可能会导致更严重的问题。
Sev 3 信息 不表示出现了问题,而是向操作员提供相关信息,例如成功完成了某个例行过程。
Sev 4 详细 详细信息没有作用

应该评估每个规则识别的状况的严重性,以分配适当的级别。 应在警报策略中定义分配给每个严重性级别的问题类型以及对每种类型做出的标准响应。

操作组

对 Azure Monitor 中的警报做出的自动响应是在操作组中定义的。 操作组是触发警报时激发的一个或多个通知和操作的集合。 单个操作组可与多个警报规则一起使用,并包含以下一项或多项:

  • 通知。 通知操作员和管理员已创建警报的消息。
  • 操作。 用于尝试纠正检测到的问题的自动化过程。

通知

通知是发送给一个或多个用户以通知他们已创建警报的消息。 由于单个操作组可与多个警报规则一起使用,因此应该为接收相同警报集的不同管理员和用户集设计一个操作组集。 根据操作员的偏好和组织标准,使用以下任何类型的通知。

  • 电子邮件
  • SMS
  • 推送到 Azure 应用
  • 语音
  • 通过电子邮件发送 Azure 资源管理器角色

操作

操作是对警报的自动响应。 可以将可用的操作用于它们支持的任何方案,但以下部分介绍了每个操作的典型用法。

自动修正

使用以下操作来尝试自动修正警报识别到的问题。

  • 自动化 Runbook - 在 Azure 自动化中启动内置或自定义的 Runbook。 例如,内置 Runbook 可用于执行诸如重启或纵向扩展虚拟机之类的功能。
  • Azure 函数 - 启动 Azure 函数。

ITSM 和值守管理

  • ITSM - 使用 ITSM 连接器在 ITSM 工具中根据来自 Azure Monitor 的警报创建工作项。 首先配置连接器,然后在警报规则中使用 ITSM 操作。
  • Webhook - 将警报发送到支持 Webhook 的事件管理系统,例如 PagerDuty 和 Splunk On-Call。
  • 安全 Webhook - ITSM 与 Azure AD 身份验证的集成

尽量减少警报活动

如果你想要针对环境中的任何重要信息创建警报,则应确保不要针对不值得关注的问题创建过多的警报和通知。 使用以下指导原则来尽量减少警报活动,确保严重的问题可以显现出来,同时不会生成过多的信息和通知来让管理员进行处理。

  • 有关可以运用哪些原则来确定某种症状是否适合发出警报,请参阅成功警报策略
  • 在指标警报规则中使用“自动解决警报”选项,以便在状况得到纠正后解决警报。
  • 在日志查询警报规则中使用“抑制警报”选项,以防止针对同一问题创建多个警报。
  • 确保为警报规则使用适当的严重性级别,以便可以一起分析高优先级问题。
  • 限制严重性为“警告”或更低的警报的通知,因为这些警报不需要立即引以关注。

大规模创建警报规则

由于你通常希望针对所有关键 Azure 应用程序和资源出现的问题发出警报,因此应该利用大规模创建警报规则的方法。

  • Azure Monitor 支持使用针对同一 Azure 区域中存在的资源所创建的一个指标警报规则,来监视同一类型的多个资源。 有关此功能目前支持的 Azure 服务列表,请参阅在 Azure Monitor 中使用指标警报进行大规模监视
  • 对于不支持多个资源的 Azure 服务的指标警报规则,请利用 CLI 和 PowerShell 等自动化工具以及资源管理器模板来针对多个资源创建相同的警报规则。 有关示例,请参阅用于 Azure Monitor 中的指标警报规则的资源管理器模板示例
  • 在日志查询警报规则中编写查询以返回多个资源的数据。 在规则中使用“按维度拆分”设置,以便为每个资源创建单独的警报。

注意

使用以资源为中心的日志查询警报规则(目前为公共预览版),可以将订阅或资源组中的所有资源用作日志查询警报的目标。

后续步骤