创建计数器指标

本页面介绍了如何使用 GCP Console、Stackdriver Logging API 和 Cloud SDK(gcloud logging 命令)来创建计数器类型的基于日志的指标

创建计数器指标

Logging 控制台

请按照以下步骤在 GCP Console 中创建基于日志的计数器指标:

  1. 点击 GCP Console 左侧导航列表中的 Stackdriver Logging > 基于日志的指标,或点击以下按钮:

    转到“基于日志的指标”

  2. 使用页面顶部的下拉菜单选择一个项目。

  3. 点击页面顶部的创建指标。此时,您可以在页面右侧看到指标编辑器,还可以在左侧看到显示了日志的查看器面板:

    创建计数器指标

  4. 在查看器面板中,创建一个过滤条件,用于仅显示要在指标中计数的日志条目。

    日志条目上方的下拉菜单中提供了基本过滤条件。或者,您可以点击搜索栏右侧的下拉菜单并选择转换为高级过滤条件,以访问高级过滤条件界面。

    如需了解详情,请参阅日志查看器

  5. 指标编辑器面板中,设置以下字段:

    • 名称:选择对于项目中基于日志的指标而言唯一的名称。您需遵循一些命名限制;要了解详情,请参阅问题排查
    • 说明:对指标进行说明。
    • 标签:(可选)针对每个标签点击添加一项可添加标签。如需详细了解如何定义标签,请参阅基于日志的指标标签
    • 单位:对于计数器指标,请将此字段留空或插入数字 1
    • 类型计数器
  6. 点击创建指标,以创建指标。

Logging API

要创建计数器指标,请使用 Stackdriver Logging API 的 projects.metrics.create 方法。您可以在 API Explorer 中试用该方法。请按以下步骤准备方法的参数:

  1. parent 字段设置为要在其中创建指标的项目:

    projects/[PROJECT_ID]
    
  2. 将请求正文设置为 LogMetric 对象。以下是该对象的一个示例:

    {
      name:        "my-metric"
      description: "This is my metric."
      filter:      "resource.type=gce_instance AND logName:\"logs/syslog\"",
      metricDescriptor: {
          labels: [
            {
              key: "my-label",
              valueType: STRING,
              description: "This is my label.",
            }
          ]
      },
      labelExtractors: {
        "my-label":
          "REGEXP_EXTRACT(jsonPayload.someField, \"before ([0-9]+) after\")",
        ...
      },
    }
    

注意:

  • 选择对于项目中基于日志的指标而言唯一的指标名称。您需遵循一些命名限制;要了解详情,请参阅问题排查

  • 对于计数器指标,LogMetric 字段 valueExtractorbucketOptions 没有任何用途,已被省略。

  • 如果指标没有标签,则可以省略 metricDescriptorlabelExtractors 字段。如果指标确实有标签,请参阅基于日志的指标标签,了解标签简介,并详细了解如何在该 API 中创建标签。

如需了解详情,请参阅 LogMetric 类型。

Cloud SDK

Cloud SDK gcloud logging 命令支持没有标签且为计数器类型的基于日志的指标。以下命令用于创建基于日志的指标:

gcloud logging metrics create [METRIC_NAME] [METRIC_DESCRIPTION] [FILTER]

例如,以下命令可创建一个名为 error_count 的基于日志的计数器指标。

gcloud logging metrics create error_count \
    --description "Errors in syslog." \
    --log-filter "resource.type=gce_instance AND logName:logs/syslog AND severity>=ERROR"

选择对于项目中基于日志的指标而言唯一的指标名称。您需遵循一些命名限制;要了解详情,请参阅问题排查

新指标延迟情况

新指标会立即显示在日志查看器的指标列表以及 Stackdriver Monitoring 相关菜单中。数据应在不到一分钟的时间内提供。

检查计数器指标

要列出 GCP 项目中基于日志的指标,或检查项目中的特定指标,请执行以下操作:

Logging 控制台

点击以下按钮即可转到基于日志的指标页面,其中列出了当前项目中所有基于日志的指标:

转到“基于日志的指标”

要查看基于日志的指标中的数据,请从指标列表右侧的菜单中选择在 Metric Explorer 中查看

Logging API

列出指标

要列出项目中用户定义的基于日志的指标,请使用 projects.metrics.list API 方法。按如下所示填写方法的参数:

  • parent:项目 projects/[PROJECT_ID] 的资源名称。
  • pageSize:最大结果数。
  • pageToken:获取下一页结果。请参阅 projects.metrics.list

检索指标定义

要检索单个用户定义的基于日志的指标,请使用 projects.metrics.get API 方法。按如下所示填写方法的参数:

  • metricName:指标的资源名称:

    projects/[PROJECT_ID]/metrics/[METRIC_ID]
    

读取指标数据

要读取基于日志的指标中的时间序列数据,请使用 Stackdriver Monitoring API 中的 projects.timeseries.list。如需了解详情,请参阅读取时间序列。以下是基于日志的指标所需的信息:

  • 指标类型为 logging.googleapis.com/user/[METRIC_ID]

Cloud SDK

要列出项目中用户定义的基于日志的指标,请使用以下命令:

gcloud logging metrics list

要显示项目中用户定义的基于日志的指标,请使用以下命令:

gcloud logging metrics describe [METRIC_NAME]

如需了解详情,请使用以下命令:

gcloud logging metrics --help

您无法通过 Cloud SDK 读取指标的时间序列数据。

更新计数器指标

您可以通过更新基于日志的指标来更改指标中引用的字段的说明、过滤条件和名称。您可以向指标添加新标签,还可以更改用于提取指标及其标签的值的正则表达式。

您无法更改基于日志的指标或其标签的名称或类型,也无法删除基于日志的指标中的现有标签。

要修改或更新基于日志的指标,请执行以下操作:

Logging 控制台

  1. 转到基于日志的指标页面:

    转到“基于日志的指标”

  2. 在要修改的基于日志的指标右侧的菜单中,点击修改指标

  3. 仅更改指标中允许更改的项目。

  4. 点击完成

Logging API

要修改或更新基于日志的指标,请使用该 API 中的 projects.metrics.update 方法。按如下所示设置字段:

  • metricName:指标的完整资源名称:

    projects/[PROJECT_ID]/metrics/[METRIC_ID]
    

    例如:

    projects/my-gcp-project/metrics/my-error-metric
    
  • 在请求正文中,添加与现有指标完全相同(要更改或新增的内容除外)的 LogMetric 对象。

Cloud SDK

您只能使用 Cloud SDK 更改现有指标的说明和过滤条件。

要更新基于日志的指标,请使用以下命令。您可以指定其中一个或两个标志:

gcloud logging metrics update [METRIC_NAME] --description=[DESCRIPTION] --log-filter=[FILTER]

如需了解详情,请使用以下命令:

gcloud logging metrics update --help

删除计数器指标

要删除基于日志的指标,请执行以下操作:

Logging 控制台

  1. 转到基于日志的指标页面:

    转到“基于日志的指标”

  2. 选择要删除的指标,然后点击页面顶部的删除

    或者,在要删除的基于日志的指标右侧的菜单中,点击删除指标

Logging API

使用该 API 中的 projects.metrics.delete 方法。

Cloud SDK

使用以下命令删除当前项目中用户定义的基于日志的指标:

gcloud logging metrics delete [METRIC_NAME]

如需了解详情,请使用以下命令:

gcloud logging metrics delete --help

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Stackdriver Logging
需要帮助?请访问我们的支持页面