基于日志的指标概览

本页面从概念上简要介绍了基于日志的指标。

基于日志的指标可帮助您观察大量趋势和模式 日志数量这些指标派生自源自 Google Cloud 项目或由其他项目中的接收器路由到 Google Cloud 项目的日志条目。例如,您可以使用基于日志的指标 统计包含特定消息或 提取日志条目中记录的延迟时间信息。 您可以在 Cloud Monitoring 图表和提醒中显示基于日志的指标 政策可以监控这些指标。

如果您打算创建提醒政策来监控基于日志的指标,请确保您了解此方法的局限性。具体来说, 条评价 问题排查:指标缺少日志数据

基于日志的指标的来源

您可以使用 Cloud Logging 定义的指标来收集常规使用情况信息,还可以定义自己的基于日志的指标来捕获特定于您的应用或业务的信息。

基于日志的指标可在单个 Google Cloud 项目或日志分桶中应用。您无法为其他 Google Cloud 资源(例如 Cloud Billing 账号或组织)创建基于日志的指标。

如需了解基于项目的基于日志的指标与基于存储桶的基于日志的指标之间的区别,请参阅基于存储桶的基于日志的指标

系统定义的指标

Logging 提供了一组关于用量值的指标,例如 项目的日志存储分区中存储的日志条目数,或 您导出的字节数。 如需查看系统定义的指标的完整列表,请参阅 Google Cloud 指标:日志记录

用户定义的指标

您可以创建用户定义的基于日志的指标 跟踪对您的项目很重要的其他指标。例如,您可以创建基于日志的指标来计算与给定过滤条件匹配的日志条目的数量。

默认情况下,用户定义的基于日志的指标是根据 Logging API 接收的 Google Cloud 项目日志计算得出的,不考虑可能应用于 Google Cloud 项目的任何包含过滤器排除过滤器

您还可以为 Google Cloud 项目中的特定日志存储桶创建用户定义的基于日志的指标。存储分区级范围 基于日志的指标是根据发往该存储桶的所有日志计算得出的, 无论它们来自何处如需了解详情,请参阅 日志存储分区上基于日志的指标

基于日志的指标的数据类型

基于日志的指标可以从日志中提取数据,以创建以下类型的指标:

  • 计数器:这些指标用于统计特定时间段内与指定过滤条件匹配的日志条目的数量。如果您想跟踪某个值或字符串在日志中出现的次数,请使用计数器。
  • 分布:这些指标也会统计值,但会收集 计入值的范围(直方图分区)。在下列情况下使用发行版 提取延迟时间等值。
  • 布尔值:这些指标用于捕获日志条目是否与指定的 过滤。

用户定义的基于日志的指标既可以是计数器指标类型,也可以是分布指标类型。系统定义的大多数基于日志的指标都是计数器,但也有一些 布尔值类型。计数器和分布的特性 。

用户定义的基于日志的指标的数据仅来自日志条目 在创建指标后收到的值。指标无法追溯 会填充 Logging 中已有的日志条目中的数据。

基于系统日志的指标仅根据包含的日志计算得出。用户定义的基于日志的指标通过包含和排除的日志计算得出。

每当收到匹配的日志条目时,Logging 都会累积基于日志的指标信息。Logging 会以每分钟 1 个数据点的速率将新数据点写入指标的时间序列,以便向 Cloud Monitoring 提供数据。

基于日志的指标时间序列中的每个数据点仅表示自上一个数据点以来收到的额外信息 (delta)。

以下各部分介绍计数器类型和分布类型指标的特征。

计数器指标

计数器指标用于计算与给定过滤条件匹配的日志条目的数量。例如,您可以执行以下操作:

  • 计算包含特定特定错误消息的日志条目的数量。
  • 通过查找与如下模式匹配的日志消息来计算每个用户调用操作的次数:

    ... user USERNAME called OPERATION ...

    通过提取 USERNAMEOPERATION 并将其用作两个标签的值,您可以在稍后询问“sally 调用了多少次 update 操作?”、“有多少人调用了 read 操作?”、“george 调用了多少次操作?”等问题。

如需了解详情,请参阅配置计数器指标

分布指标

分布指标会累积与过滤条件匹配的日志条目的数字数据。此类指标包含分布对象的时间序列,每个对象包含以下内容:

  • 分布中值的数量。
  • 值的平均值。
  • 方差和:Sumi=1..n(xi–mean)2
  • 一组直方图分区,其中包含每个分区中的值的数量。您可以使用默认分区布局,也可以自行选择分区布局。

分布指标的一个常见用途是跟踪延迟。收到每个日志条目后,系统将从日志条目中的某个位置提取延迟值,并将其添加到分布中。系统会按固定间隔将累积的分布写入 Cloud Monitoring。

如需了解分布(包括其时间序列中的格式及其可视化方式),请参阅绘制分布指标图表

如需了解如何创建基于分布日志的指标,请参阅 配置分布指标

资源类型

我们建议您为基于日志的指标指定单一资源类型。 此规范可确保为您的业务 基于日志的指标与 Cloud Monitoring 预期的数据模型匹配。 它还简化了创建图表和提醒政策的流程, 对于用图表或监控的时间序列数据,没有任何歧义。

假设某个基于日志的指标具有以下过滤条件:

severity>="ERROR"
resource.type="gce_instance"

Cloud Monitoring 会识别出这些数据属于 Compute Engine 虚拟机实例。因此,当您为虚拟机实例创建图表时,您的 “基于日志的指标”作为选项列在菜单中。为其他资源类型创建图表时,基于日志的指标不会列为选项。

如果您创建基于日志的指标而未指定资源类型,则: Monitoring 将基于日志的指标列为 资源类型,即使您不计入这些资源的条目数。

标签

基于日志的指标可以包含标签,以便为指标收集多个时间序列。系统会从匹配的日志条目中的字段提取标签值。Logging 会为标签值的每个组合记录单独的时间序列。

所有基于日志的指标都提供默认的 log 标签。 此标签包含 LOG_ID 部分 日志条目中的 logName 字段,例如 cloudresourcemanager.googleapis.com%2Factivity

基于日志的系统指标具有预定义标签,无法更改。不过,您可以为用户定义的指标自定义标签。例如,您可以在基于日志的指标中使用标签来记录文件夹或 构成日志条目的组织(即使存储桶级范围) 无法为文件夹或组织创建基于日志的指标。有关 相关信息,请参阅基于日志的指标标签

Cloud Monitoring 中的图表和提醒政策

您可以在 Cloud Monitoring 中使用系统定义的和用户定义的基于日志的指标来创建图表和提醒政策。如需了解详情,请参阅列出基于日志的指标和基于日志的指标图表以及基于日志的指标提醒

在 Cloud Monitoring 中,基于日志的指标使用以下命名模式:

  • 系统:logging.googleapis.com/SYSTEM_METRIC_NAME
  • 用户定义:logging.googleapis.com/user/USER_METRIC_NAME

请注意,用户定义的基于日志的指标包含字符串 user

可以查看 Monitoring 指标范围

基于日志的指标由 Cloud Monitoring 注入,其 指标数据发送到 Google Cloud 项目的比例取决于指标范围。 指标范围是项目所监控的项目的列表 托管指标范围的平台托管项目称为 限定范围的项目

默认情况下,每个项目都托管一个指标范围 仅包含自身,因此项目本身就是一个限定范围的项目。 因此,您的指标(包括基于日志的指标)仅对您的 Google Cloud 项目可见。

您还可以为 范围项目。对于多项目指标范围, 限定范围的项目可以查看所有项目的指标 指标范围内的用户项目中各个项目可以查看的内容 多项目指标范围由指标范围确定 由其中的每个项目托管事实上,两个项目 多项目指标范围并不意味着每个项目都可以访问 另一个项目中的指标或配置数据。

单个项目也可能出现在多个指标范围内。 此类项目的指标对每个指标范围的范围限定项目可见。

指标(包括基于日志的指标)是在特定项目中定义的。 如果该项目出现在多个指标范围中,则指标对定义它们的项目以外的项目也是可见的。如需了解指标范围和基于日志的指标(范围限定为存储桶)之间的互动方式,请参阅项目和指标范围

如需详细了解指标范围(包括多项目指标范围)以及范围限定的项目,请参阅以下内容:

价格

所有用户定义的基于日志的指标都属于 需要付费的 Cloud Monitoring 自定义指标。如需了解价格信息,请参阅 Cloud Logging 价格:基于日志的指标

配额

有关与用户定义的 基于日志的指标,请参阅配额和限制

问题排查

如果您在使用基于日志的指标时遇到问题,请参阅排查基于日志的指标的问题