本文档介绍了当您的应用出现故障或性能不符合定义的标准时,您可以如何接收通知。
提醒工作的工作原理
Cloud Monitoring 提醒流程包含三个部分:
提醒政策,用于说明您希望在哪些情况下收到提醒以及希望如何接收突发事件通知。提醒政策可以监控 Monitoring 存储的时间序列数据或 Cloud Logging 存储的日志。当这些数据满足提醒政策条件时,Monitoring 会创建突发事件并发送通知。
每个突发事件都是记录所监控数据类型以及满足条件的时间。这些信息可帮助您排查导致突发事件的问题。
通知渠道用于定义在 Monitoring 创建突发事件时您接收通知的方式。例如,您可以将通知渠道配置为向
my-support-team@example.com
发送电子邮件,并向频道#my-support-team
发布 Slack 消息。提醒政策可以包含一个或多个通知渠道。
提醒政策可以评估三种类型的数据:
时间序列数据(也称为指标数据),由 Monitoring 存储。这类���策称为基于指标的提醒政策。
如需了解如何设置基于指标的提醒政策,请参阅 Compute Engine 快速入门。
Cloud Logging 存储的日志条目数据。用于评估各个日志条目的提醒政策称为基于日志提醒政策。基于日志的提醒政策会在日志中出现特定消息时通知您。如需了解详情,请参阅监控日志。
在 Log Analytics 中针对 Logging 中存储的日志条目数据运行的 SQL 查询的结果。监控 SQL 查询结果的提醒政策称为基于 SQL 的提醒政策。如需了解详情,请参阅使用提醒政策监控 SQL 查询结果。
基于 SQL 的提醒政策目前处于公开预览版阶段。
当应用性能未达到可接受的值时,提醒流程可帮助您响应问题。例如,您将 Web 应用部署到 Compute Engine 虚拟机 (VM) 实例上。虽然您预计 HTTP 响应延迟时间会波动,但您希望支持团队在应用的延迟时间较长时做出响应。您可以创建基于指标的提醒政策,以监控应用的 HTTP 响应延迟时间指标。如果响应延迟时间超过两秒且持续至少五分钟,则 Monitoring 会创建一个突发事件,并向您的支持团队发送电子邮件通知。
如何创建提醒政策
您可以通过多种方式创建提醒政策。例如,您可以通过在 Google Cloud 控制台中启用集成或特定页面中的建议提醒,使用预配置的提醒政策。您还可以使用 Google Cloud 控制台、Cloud Monitoring API、Google Cloud CLI 和 Terraform 配置新的提醒政策。
使用集成和建议的提醒政策
Monitoring 提供了预构建的软件包,可让您为 Google Cloud 服务和第三方集成创建提醒政策。这些文件包包含建议的提醒政策、示例信息中心和服务的关键指标。这些软件包适用于 Google Cloud 服务(例如 Google Kubernetes Engine、Compute Engine 和 Cloud SQL)以及常见的第三方集成(例如 MongoDB、Kafka 和 Elasticsearch)。
安装软件包时,您可以启用软件包的建议提醒政策。启用建议的提醒政策时,您需要配置其通知渠道,并可以选择修改其他值。配置后,提醒政策会立即开始监控其目标,无需用户进一步输入。
当您部署了新服务并希望针对重要指标设置提醒时,建议的提醒政策会很有用。例如,Cloud SQL 集成软件包附带了针对实例失败和交易缓慢情况的建议提醒政策:
如需详细了解提醒集成,请参阅监控第三方应用。
创建新的提醒政策
您可以根据自己的提醒需求创建提醒政策,以监控不同类型的数据。以下部分列出了您可以使用提醒政策监控的不同类型的数据。
监控时序数据
条件类型 | 说明 | 示例 |
---|---|---|
指标阈值条件 | 如果指标的值高于或低于特定重试时间段的阈值,则满足指标阈值条件。 如需了解详情,请参阅创建指标阈值提醒政策和使用 API 创建提醒政策。 |
您希望创建一条提醒政策,当连续 10 分钟内有 5 次拨测的响应延迟时间达到 500 毫秒或更高时发送通知。 |
指标缺失条件 | 如果受监控的时序在特定的重新测试时间段内没有数据,则会满足指标缺失条件。重新测试的时间范围上限为 23.5 小时。 如需了解详情,请参阅创建指标缺失提醒政策和使用 API 创建提醒政策。 | 您希望创建一个提醒政策,以便在资源在 5 分钟内未响应任何 HTTP 请求时,向支持团队打开突发事件。 |
预测的指标值条件 | 如果提醒政策预测在即将到来的预测时间范围内会违反阈值,则表示预测的指标值条件已满足。 预测期可以是 1 小时到 7 天。 如需了解详情,请参阅创建预测指标值提醒政策和使用 API 创建提醒政策。 |
您希望设置提醒政策,以便在资源在接下来的 24 小时内可能达到 80% 的磁盘空间用量时,向支持团队发出突发事件。 |
监控日志条目数据
如需监控各个日志条目,请使用基于日志的提醒政策。当提醒政策检测到日志条目中的某个字词与提醒政策条件相符时,即表示满足基于日志的提醒政策的条件。例如,您希望创建一个提醒政策,以便在日志条目的 message
包含 product_ids=['tier_1_support', 'tier_2_support']
时,向支持团队打开突发事件。
如需了解详情,请参阅日志记录文档中的配置基于日志的提醒政策。
监控 SQL 查询结果
如需监控 SQL 查询结果,请使用基于 SQL 的提醒政策。基于 SQL 的提醒政策的条件会定期分析您的日志条目数据,然后在查询结果表满足特定条件时创建突发事件。如果您需要一项用于监控多个日志条目中数据汇总或复杂模式的提醒政策,此类提醒政策会很有用。例如,您希望在过去 60 分钟内有超过 50 条日志条目的严重性为 WARNING
时收到通知。
如需了解详情,请参阅 Logging 文档中的使用提醒政策监控 SQL 查询结果。
提醒政策组成部分
每项提醒政策都包含以下组成部分:
用于描述资源(或一组资源)处于需要响应的状态的条件。条件包���数据源、静态或动态阈值,以及过滤器和分组等数据汇总方法。您的条件可以监控单个指标、多个指标或指标的比率。您还可以使用 Prometheus 查询语言 (PromQL) 添加动态阈值和条件逻辑等复杂表达式。
如果您使用集成来启用建议的提醒政策,系统会预先填充提醒政策条件。
通知渠道列表,用于描述在需要采取措施时通知谁。如需了解详情,请参阅创建和管理通知渠道。
显示在通知和突发事件页面中的文档。您可以配置通知的主题行,还可以在通知正文中添加实用信息。例如,您可以将通知配置为显示指向内部手册或 Google Cloud 页面(例如自定义信息中心)的链接。如需详细了解文档(包括示例),请参阅使用用户定义的文档为突发事件添加注释。
查询语言
在提醒政策中使用查询语言和过滤条件,以更好地控制指标评估。Monitoring 支持以下查询类型:
Prometheus 查询语言 (PromQL) 是一种功能性查询语言,用于实时评估时序数据。您可以配置提醒政策,使其条件中包含 PromQL 查询。PromQL 查询可以使用任何有效的表达式,例如指标组合、比率和伸缩阈值。通过在 Google Cloud 中使用基于 PromQL 的条件配置提醒政策,您可以减少对外部提醒基础架构的依赖。如需了解详情,请参阅 Cloud Monitoring 中的 PromQL 和使用 PromQL 的提醒政策。
借助监控过滤条件,您可以配置提醒政策以使用基于过滤条件的指标比率。您无法在 Google Cloud 控制台中查看或修改基于过滤条件的提醒政策。如需查看使用 Monitoring 过滤条件的政策示例,请参阅指标比率。
Monitoring Query Language (MQL) 是一个具有较强表达能力的文本界面,可用于检索、过滤和处理时间序列数据。您可以创建包含 Monitoring Query Language 提醒操作的条件提醒政策。如需了解详情,请参阅 Monitoring Query Language 概览和使用 MQL 的提醒政策。
管理提醒政策和突发事件
启用提醒政策后,Monitoring 会持续监控该政策的条件。您不能将提醒政策配置为仅监控特定时间段内的条件。如果您想在特定时间段内停用提醒政策,请创建延迟。
如果已打开突发事件,并且 Monitoring 确定不再满足基于指标的政策的条件,则 Monitoring 会自动关闭突发事件并发送关闭通知。
价格
一般来说,Cloud Monitoring 系统指标是免费的,而来���外部系统、代理或应用的指标则需要付费。可计费指标按注入的字节数或样本数计费。
如需详细了解 Cloud Monitoring 的价格,请参阅以下文档:
如需了解如何监控提取的轨迹跨度或日志的数量,或者如何在日志条目中包含特定内容时收到通知,请参阅以下文档:
后续步骤
如需了解通知延迟时间以及提醒政策的参数选择对通知发送时间有何影响,请参阅基于指标的提醒政策的行为。
如需查看基于指标的政策示例列表,请参阅示例提醒政策摘要。