本文档介绍了如何使用 Cloud Monitoring 观察日志中的趋势,并在出现描述的条件时通知您。为了向 Cloud Monitoring 提供日志中的数据,Logging 支持以下功能:
您可以根据日志条目生成自定义指标。这些指标称为基于日志的指标。您还可以创建基于指标的提醒政策,以便在基于日志的指标满足条件时通知您。如需了解详情,请参阅使用基于日志的指标可视化日志条目数据。
您可以使用提醒政策近乎实时地监控日志条目中出现消息的情况。这些提醒政策称为基于日志的提醒政策。如需了解详情,请参阅监控消息的各个日志条目。
您可以在 Log Analytics 中编写 SQL 查询,并创建用于监控查询结果的提醒政策。这些提醒政策称为基于 SQL 的提醒政策。如需了解详情,请参阅监控 SQL 查询结果。
基于 SQL 的提醒政策目前处于公开预览版阶段。
本文档的其余部分介绍了这三种提醒政策之间的区别,并提供了授权、费用和限制的相关信息。
使用基于日志的指标直观呈现日志条目数据
如果要在一段时间内监控日志中的周期性事件,请使用基于日志的指标。基于日志的指标通过日志生成数值数据。如果要执行以下任一操作,则可使用基于日志的指标:
- 计算日志中消息的出现次数(例如警告或错误),并在出现次数超过阈值时接收通知。
- 观察数据中的趋势(例如日志中的延迟值),并在这些值以不可接受的方式更改时接收通知。
- 创建图表以显示从日志中提取的数字数据。
由于基于日志的指标通过日志生成数字数据,因此您可以在提醒政策中使用这些指标,并在图表中显示这些指标。如需了解如何为基于日志的指标创建提醒政策和图表,请参阅为基于日志的指标配置通知。
Cloud Monitoring 提供一组预定义的基于日志的指标,您可以定义自己的指标。如需查看系统定义的基于日志的指标的列表,请点击以下 add_circle 按钮:
用户定义的基于日志的指标
您可以创建基于日志的指标,以从日志中提取数字数据。用户定义的基于日志的指标可通过包含的日志和排除的日志计算值。
默认情况下,用户定义的基于日志的指标会从 Google Cloud 项目中的日志路由器收到的所有日志收集数据,但您也可以定义基于日志的指标,从路由到特定日志存储桶中日志收集数据。
- 如需了解如何定义和使用项目级基于日志的指标,请参阅使用基于日志的指标。
- 如需了解如何定义和使用基于日志的存储桶级指标,请参阅日志存储桶上的基于日志的指标。
如果您定义自己的基于日志的指标,可能会产生费用。如需详细了解与指标提取相关的费用,请参阅待付款指标。
监控消息的各个日志条目
如果您希望在日志条目中出现特定消息时收到通知,请使用基于日志的提醒政策。基于日志的提醒政策非常适合在日志条目中捕获安全相关事件,如下所示:
- 如果您希望事件出现在审核日志中时收到通知;例如,自然人用户访问服务账号的安全密钥。
- 您的应用将部署消息写入日志,并且您希望在记录部署更改时收到通知。
基于日志的提醒政策非常适合您认为极少见和重要的事件。您不想要了解趋势或模式,而是想知道发生了什么情况。
如需了解如何创建基于日志的提醒政策,请参阅配置基于日志的提醒政策。
您可以配置基于指标的提醒政策来模拟基于日志的提醒政策。为此,请定义一个基于日志的指标,并在阈值为 1 的基于指标的提醒政策中使用该指标。基于日志的提醒政策为您提供了这种行为,而无需创建基于日志的指标指标并配置基于指标的提醒政策。
监控 SQL 查询结果
您可以配置提醒政策,以便使用 Log Analytics 对日志条目数据运行 SQL 查询。如果您希望根据无法通过基于日志的提醒政策评估的模式(例如日志条目中的复杂模式或日志数据的汇总)收到通知,则这类提醒政策非常有效。如需了解详情,请参阅使用提醒政策监控 SQL 查询结果。
提醒选项比较
本部分对基于日志的指标构建的提醒政策、基于日志的提醒政策和基于 SQL 的提醒政策进行了比较。
摘要表
下表总结了提醒方法,并提供了其他信息的链接:
基于指标的提醒政策 | 基于日志的提醒政策 | 基于 SQL 的提醒政策 | 更多信息 |
---|---|---|---|
基于源自日志条目的指标 | 基于单个日志条目中的字符串 | 基于对日志条目执行的 SQL 查询返回的表 | 基于日志的指标 基于日志的提醒 基于 SQL 的提醒 |
用于通知您一段时间内的趋势 | 用于在日志中显示特定消息时通知您 | 用于通知您日志条目窗口中的模式 | 基于日志的指标 基于日志的提醒 基于 SQL 的提醒 |
计算依据:
|
仅匹配包含的日志 | 根据滑动窗口中的日志条目计算得出 | 可用日志 基于 SQL 的提醒 |
处理范围限定项目的指标范围内的所有项目的指标 | 仅处理范围限定的项目中的日志 | 对任何 Google Cloud 项目中的所有可读日志执行操作。 | 监控多个项目的指标 |
当指标的值在指定时间段内满足条件时,系统会创建突发事件 | 每当特定日志条目与过滤条件匹配时,系统都会创建突发事件 | 当查询结果表满足某个条件时,系统会创建突发事件 | 突发事件和通知 |
在 Monitoring 中创建和管理 | 在 Logging 中创建; 在 Monitoring 中管理 |
在 Log Analytics 中创建;在 Monitoring 中管理 | 创建和管理提醒政策 基于 SQL 的提醒 |
在 Monitoring 中查看 | 在 Monitoring 中查看 | 在 Monitoring 中查看 | 查看提醒政策 |
可以使用 Monitoring 支持的任何通知渠道 | 可以使用 Monitoring 支持的任何通知渠道 | 可以使用 Monitoring 支持的任何通知渠道 | 通知渠道 |
可用日志
用户定义的基于日志的指标是根据 Logging API 接收的 Google Cloud 项目日志计算得出的,不考虑可能应用于 Google Cloud 项目的任何包含过滤器或排除过滤器。如果您根据用户定义的基于日志的指标创建提醒政策,则该政策会监控所有日志中的数据。
系统定义的基于日志的指标仅根据存储在 Google Cloud 项目日志存储分区中的日志进行计算。如果某个日志已明确排除,则这类指标中不会包含该日志中的数据。如果您根据系统定义的基于日志的指标创建提醒政策,则该政策仅监控包含的日志中的数据。
基于日志的提醒政策仅对项目中包含的日志执行操作。您无法使用基于日志的提醒政策来通知您排除日志中的消息,或来自其他资源(例如文件夹或组织)的日志中的消息。
基于日志的指标和基于日志的提醒政策都在 Google Cloud 项目范围内运行,而不是在单个存储分区上运行。
基于 SQL 的提醒政策会查询日志存储分区中的日志视图。您必须升级这些日志存储分区才能使用 Log Analytics,然后将其关联到 BigQuery 数据集。如需详细了解基于 SQL 的提醒政策,请参阅使用提醒政策监控 SQL 查询结果。
监控多个项目的指标
您可以通过配置指标范围来监控多个项目的指标。指标范围列出了其监控的所有项目和账号。范围限定的项目托管指标范围。范围界定项目会存储您为指标范围创建的提醒政策和其他配置。指标范围的范围界定项目是由 Google Cloud 控制台项目选择器选择的项目。
基于基于日志的指标的提醒政策(如基于其他指标的提醒政策)适用于范围划定项目的指标范围内的所有项目。
基于日志的提醒政策不适用于指标范围;项目中的日志不属于指标范围。基于日志的提醒政策会评估源自当前 Google Cloud 项目或路由到当前项目的日志条目,然后将其存储在日志存储桶中。
基于 SQL 的提醒政策不适用于指标范围。
如需详细了解指标范围(包括多项目指标范围)以及范围限定的项目,请参阅以下内容:
突发事件和通知
当满足提醒政策的条件时,Monitoring 会打开突发事件,并向提醒政策的通知渠道发送通知。如需查看突发事件的详细信息,请点击通知消息中的查看突发事件,或直接导航到 Monitoring 中的突发事件页面。
基于指标的提醒政策的突发事件
如提醒行为中所述,基于基于日志的指标的提醒政策会创建类似 Monitoring 中所有其他指标式提醒政策的突发事件和通知。如需详细了解如何管理基于指标的提醒政策的突发事件,请参阅基于指标的提醒政策的突发事件。
基于日志的提醒政策的突发事件
基于日志的提醒政策不是基于指标的提醒政策。当日志条目满足基于日志的提醒政策的条件时,Monitoring 会按如下方式创建突发事件和通知:
Cloud Logging 首次将与提醒查询匹配的日志条目写入日志存储桶时,系统会创建一个突发事件并发送通知。如果随后写入了另一个匹配的日志条目,则仅当上一个突发事件已关闭时,才会创建新突发事件。但是,已关闭的突发事件最多可能需要三分钟才能被完全清除。如果在关闭突发事件后的三分钟内收到匹配日志条目,系统可能会重新打开该突发事件,而不是创建新突发事件。
创建基于日志的提醒政策时,您可以指定通知之间的最短时间间隔。例如,您选择 10 分钟作为通知间隔时间。如果基于日志的提醒政策的条件在这段时间内满足两次,那么您只会收到一条通知。
基于日志的提醒政策的通知发送速率上限为每项基于日志的提醒政策每 5 分钟 1 条通知。不过,如果基于日志的提醒政策的查询会提取标签值,则提取的每个值组合都代表自己的通知时间轴。例如,假设基于日志的提醒政策会提取标签的值。假设 label 可以有两个值。采用此配置后,您可能会在 5 分钟内收到两个通知,每个标签值对应一条通知。
每个基于日志的提醒政策每天最多只能发送 20 条通知。如果您达到此限制,则通知中将包含一条消息,提示您已达到此上限。
除非您配置较短的时段或手动关闭突发事件,否则突发事件将在 7 天后自动关闭。
如需详细了解如何管理基于日志的提醒政策的突发事件,请参阅管理基于日志的提醒政策的突发事件。
基于 SQL 的提醒政策的突发事件
对于基于 SQL 的提醒政策,Cloud Monitoring 会在 SQL 查询的结果首次满足政策中指定的条件时创建突发事件。每项提醒政策只能有一个未解决突发事件。在突发事件处于未解决状态时,如果再次满足该条件,Monitoring 不会再创建突发事件或发送其他通知。除非您配置较短的突发事件关闭期限或自行关闭突发事件,否则 Monitoring 会在 7 天后关闭基于 SQL 的突发事件。
如需详细了解如何管理基于 SQL 的提醒政策的突发事件,请参阅管理基于 SQL 的提醒政策的突发事件。
创建和管理提醒政策
您可以根据 Cloud Monitoring 中基于日志的指标创建、修改和删除提醒政策,像任何其他基于指标的提醒政策一样。如需了解详情,请参阅管理政策。
您可以使用日志浏览器或 Cloud Monitoring API 创建基于日志的提醒政策。您可以在 Monitoring 中或使用 Cloud Monitoring API 修改和删除基于日志的提醒政策。如需了解详情,请参阅管理基于日志的提醒政策。
您可以使用 Log Analytics 或 Cloud Monitoring API 创建基于 SQL 的提醒政策。您可以在 Monitoring 中或使用 Cloud Monitoring API 修改和删除基于 SQL 的提醒政策。如需了解详情,请参阅使用提醒政策监控 SQL 查询结果。
查看提醒政策
Monitoring 中的政策页面列出了 Google Cloud 项目中的所有提醒政策。此列表包括使用基于日志的指标和基于日志的提醒政策的政策。
-
在 Google Cloud 控制台中,转到 notifications 提醒页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 选择查看所有政策。
基于日志的提醒政策会显示在列表中,类型列中为 Logs
值。基于指标(包括基于日志的指标)的提醒政策会显示在列表中,类型列中为 Metrics
值。基于 SQL 的提醒政策会显示在列表中,类型列中为 SQL
值。以下屏幕截图显示了政策列表的摘录:
通知渠道
您可以将任何类型的提醒政策发送的通知发送到 Monitoring 支持的任何通知渠道。您必须先配置这些渠道,然后才能在提醒政策中使用它们。
如需了解详情,请参阅管理通知渠道。
授权要求
使用基于日志的指标或基于日志的提醒政策需要获得对 Cloud Logging 和 Cloud Monitoring 的授权。
如需了解用户定义的基于日志的指标,请参阅基于日志的指标权限。
对于基于日志的提醒政策,请参阅基于日志的提醒政策的权限。
如需了解基于 SQL 的提醒政策,请参阅基于 SQL 的提醒政策的权限。
费用和限制
如果您定义了自己的基于日志的指标,则需遵守以下要求:
- 用户定义的基于日志的指标的数量和结构存在限制。如需详细了解这些限制,请参阅基于日志的指标限制。
- 您可能需要为用户定义的基于日志的指标付费。如需详细了解与指标提取相关的费用,请参阅待付款指标。
- 基于 SQL 的提醒政策在 Google Cloud 项目中的 BigQuery 预订中运行。您可能会因使用 BigQuery 预留功能而产生费用。如需详细了解与 BigQuery 预订相关的费用,请参阅 BigQuery 价格。
使用基于基于日志的指标的提醒政策无需付费。
以下 Monitoring 限制相关提醒政策的应用:
类别 | 值 | 政策类型1 |
---|---|---|
每个指标范围的提醒政策(指标和日志的总和)2 | 500 | 指标、日志 |
每项基于指标的提醒政策的条件数量 | 6 | 指标 |
每个基于 SQL 的提醒政策的条件(公开预览版) | 1 | SQL |
指标缺失条件评估的 最长时间段3 |
1 天 | 指标 |
指标阈值条件评估的 最长时间段3 |
23 小时 30 分钟 | 指标 |
指标阈值条件中使用的过滤条件的长度上限 |
2,048 个 Unicode 字符 | 指标 |
一个预测条件监控的时序的数量上限 |
64 | 指标 |
最短预测时段 | 1 小时(3,600 秒) | 指标 |
预测时段上限 | 2.5 天(216,000 秒) | 指标 |
每项提醒政策的通知渠道数量 | 16 | 指标、日志 |
通知率上限4 | 每项基于日志的提醒政策每 5 分钟 1 条通知 | 日志 |
通知数上限 | 每个基于日志的提醒政策每天 20 条通知 | 日志 |
每项提醒政策同时打开的突发事件数量上限 |
1000 | 指标 |
无新数据突发事件的 自动关闭期 |
7 天 | 指标 |
非手动关闭的突发事件最长持续时间 | 7 天 | 日志 |
已关闭的突发事件的保留期限 | 13 个月 | 不适用 |
未结突发事件的保留期限 | 无限期 | 不适用 |
每个指标范围的通知渠道 | 4000 | 不适用 |
每次延迟提醒时可设置的提醒政策数量上限 | 16 | 指标、日志 |
延后提醒的保留 | 13 个月 | 不适用 |
2Apigee 和 Apigee Hybrid 与 Cloud Monitoring 深度集成。所有 Apigee 订阅层级(标准版、企业版和企业加强版)的提醒限制与 Cloud Monitoring 相同,即每个指标范围 500 个。
3条件评估的最长时间段是校准时间段和时长窗口值的总和。例如,如果将校准时间段设置为 15 小时,并将时长窗口设置为 15 小时,则需要 30 小时的数据来评估条件。
4如果基于日志的提醒政策的查询会提取标签值,则提取的每个值组合都代表自己的通知时间轴。例如,假设基于日志的提醒政策会提取标签的值。假设标签可以有两个值。采用此配置后,您可能会在同一 5 分钟内收到两个通知,每个标签值对应一个通知。