本文档介绍了如何使用 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 项目范围,而非单个存储分区。
基于 SQL 的提醒政策会查询日志存储桶中的日志视图。您必须升级这些日志存储桶才能使用 Log Analytics,然后将其关联到 BigQuery 数据集。如需详细了解基于 SQL 的提醒政策,请参阅使用提醒政策监控 SQL 查询结果。
跨多个项目的提醒
您可以通过配置指标范围来监控多个项目的指标。指标范围列出了其监控的所有项目和账号。范围限定的项目托管指标范围。范围界定项目会存储您为指标范围创建的提醒政策和其他配置。指标范围的范围界定项目是由 Google Cloud 控制台项目选择器选择的项目。
基于基于日志的指标的提醒政策(如基于其他指标的提醒政策)适用于范围划定项目的指标范围内的所有项目。
基于日志的提醒政策和基于 SQL 的提醒政策 不在指标范围上运行;登录 项目不属于指标范围。基于日志的提醒政策仅评估源自当前项目或路由到当前项目的日志。基于 SQL 的提醒政策会查询日志分桶中的日志视图。
如需详细了解指标范围(包括多项目指标范围)以及范围限定的项目,请参阅以下内容:
只要已向关联的 BigQuery 数据集授予适当的 read
权限,基于 SQL 的提醒政策便可从任何 Google Cloud 项目中的任何日志存储桶查询日志视图。
突发事件和通知
当满足提醒政策的条件时,Monitoring 会打开突发事件,并向提醒政策的通知渠道发送通知。如需查看突发事件的详细信息,请点击通知消息中的查看突发事件,或直接导航到 Monitoring 中的突发事件页面。
基于指标的提醒政策的突发事件
如提醒行为中所述,基于基于日志的指标的提醒政策会创建类似 Monitoring 中所有其他指标式提醒政策的突发事件和通知。如需详细了解如何管理基于指标的提醒政策的突发事件,请参阅基于指标的提醒政策的突发事件。
基于日志的提醒政策的突发事件
基于日志的提醒政策不是基于指标的提醒政策。 当日志条目满足基于日志的提醒政策的条件时, Monitoring 创建突发事件和通知的方式如下:
Cloud Logging 首次将与提醒查询匹配的日志条目写入日志分桶时,系统会创建一个突发事件并发送通知。如果随后写入了另一个匹配的日志条目,则仅当上一个突发事件已关闭时,才会创建新突发事件。但是,已关闭的突发事件最多可能需要三分钟才能被完全清除。如果在关闭突发事件后的三分钟内收到匹配日志条目,系统可能会重新打开该突发事件,而不是创建新突发事件。
创建基于日志的提醒政策时,您可以指定通知之间的最短时间间隔。例如,您选择 10 分钟作为通知间隔时间。如果您的车况 基于日志的提醒政策在此期间内满足两次, 那么您只会收到一条通知
基于日志的提醒政策的通知速率上限为每项基于日志的提醒政策每 5 分钟 1 条通知。不过,如果基于日志的提醒政策的查询会提取标签值,则提取的每个值组合都代表自己的通知时间轴。例如,假设基于日志的提醒政策会提取标签的值。假设 label 可以有两个值。采用此配置后,您可能会在 5 分钟内收到两个通知,每个标签值对应一条通知。
每个基于日志的提醒政策每天最多只能发送 20 条通知。如果您达到此限制,则通知中将包含一条消息,提示您已达到此上限。
除非您配置较短的时段或手动关闭突发事件,否则突发事件将在 7 天后自动关闭。
如需详细了解如何管理基于日志的提醒政策的突发事件,请参阅管理基于日志的提醒政策的突发事件。
基于 SQL 的提醒政策的突发事件
对于基于 SQL 的提醒政策,Cloud Monitoring 会在 SQL 查询的结果首次满足政策中指定的条件时创建突发事件。每项提醒政策只能有一个未解决突发事件。在突发事件处于未解决状态时,如果再次满足该条件,Monitoring 不会再创建突发事件或发送其他通知。监控会在以下时间后关闭基于 SQL 的突发事件 7 天,除非您将突发事件关闭期缩短或结束 引发事件
如需详细了解如何管理基于 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 控制台中,转到 notifications 提醒页面:
如果您使用搜索栏查找此页面,请选择子标题为监控的结果。
- 选择查看所有政策。
基于日志的提醒政策会显示在列表中,类型列中为 Logs
值。基于指标(包括基于日志)的提醒政策
指标,其类型列的值为 Metrics
。
基于 SQL 的提醒政策出现在
在 Types 列中值为 SQL
的列表。
以下屏幕截图显示了政策列表的摘录:
通知渠道
您可以通过任何类型的提醒政策将通知发送到 Monitoring 支持的任何通知渠道。您 必须先配置这些渠道,然后才能将其用于提醒政策。
如需了解详情,请参阅管理通知渠道。
授权要求
使用基于日志的指标或基于日志的提醒政策需要授权 Cloud Logging 和 Cloud Monitoring 的最佳实践。
如需了解用户定义的基于日志的指标,请参阅 基于日志的指标的权限。
对于基于日志的提醒政策,请参阅基于日志的提醒政策的权限。
如需了解基于 SQL 的提醒政策,请参阅 基于 SQL 的提醒政策的权限。
费用和限制
如果您定义了自己的基于日志的指标,则需遵守以下要求:
- 用户定义的基于日志的指标的数量和结构存在限制。如需详细了解这些限制,请参阅基于日志的指标限制。
- 您可能需要为用户定义的基于日志的指标付费。如需详细了解与指标提取相关的费用,请参阅待付款指标。
- 在 BigQuery 中运行基于 SQL 的提醒政策 在您的 Google Cloud 项目中创建预留。您可能会因使用 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 条通知 | 日志 |
每项提醒政策同时打开的突发事件数量上限 |
1,000 | 指标 |
无新数据突发事件的 自动关闭期 |
7 天 | 指标 |
非手动关闭的突发事件最长持续时间 | 7 天 | 日志 |
已关闭的突发事件的保留期限 | 13 个月 | 不适用 |
未结突发事件的保留期限 | 无限期 | 不适用 |
每个指标范围的通知渠道 | 4000 | 不适用 |
每次延后的提醒政策数量上限 | 16 | 指标、日志 |
延后提醒的保留 | 13 个月 | 不适用 |
2Apigee 和 Apigee Hybrid 与 Cloud Monitoring 深度集成。所有 Apigee 订阅层级(标准版、企业版和企业加强版)的提醒限制与 Cloud Monitoring 相同,即每个指标范围 500 个。
3条件评估的最长时间段是校准时间段和时长窗口值的总和。例如,如果将校准时间段设置为 15 小时,并将时长窗口设置为 15 小时,则需要 30 小时的数据来评估条件。
4如果基于日志的提醒政策的查询会提取标签值,则提取的每个值组合都代表自己的通知时间轴。例如,假设基于日志的提醒政策会提取标签的值。假设标签可以有两个值。使用此配置,您可以在同一位置接收两个通知,每个通知对应一个标签值 5 分钟。