Google Cloud Platform 指标 metricset

编辑

Google Cloud Platform 指标 metricset

编辑

运营监控可以提供对云驱动应用程序的性能、正常运行时间和整体健康状况的可见性。它从 Google Cloud 的不同服务收集指标、事件和元数据。此 metricset 用于使用 ListTimeSeries API 从 Google Cloud 收集监控指标。Google Cloud 监控支持的完整指标类型列表可以在Google Cloud 指标中找到。

来自 Google Cloud 的每个监控指标都有一个采样周期和/或摄取延迟。采样周期是定期写入的指标的连续数据点之间的时间间隔。摄取延迟表示保证可以读取早于此值的数据点的时间。采样周期和摄取延迟是通过调用 ListMetricDescriptors API 获取的。

Metricset 配置和参数

编辑
  • aligner:一个字符串,指定需要应用于 ListTimeSeries API 的时间序列数据的聚合操作。如果未指定,则默认对齐器为 ALIGN_NONE。Google Cloud 还支持 ALIGN_DELTAALIGN_RATEALIGN_MINALIGN_MAXALIGN_MEANALIGN_COUNTALIGN_SUM 等。有关对齐器的完整列表,请参阅 聚合对齐器
  • metric_types:必需,指标类型字符串列表或指标类型前缀列表。例如,instance/cpu 是指标类型 instance/cpu/usage_timeinstance/cpu/utilization 等的前缀。每次调用 ListTimeSeries API 可以从单个指标类型返回任意数量的时间序列。指标类型用于标识特定的时间序列。
  • service:必需,相关指标的服务的名称。这应该是有效的 Google Cloud 服务名称。服务名称可以从GCP 指标列表文档的相应页面查看。service 字段用于计算 GCP 指标前缀,除非设置了 service_metric_prefix
  • service_metric_prefix:一个字符串,其中包含 GCP 文档中指定的完整指标前缀。来自 GCP Monitoring API 的所有指标都需要一个前缀。当 service_metric_prefix 为空时,前缀默认为使用 service 值计算的值:<service>.googleapis.com/。此默认值适用于“Google Cloud 指标”下的任何服务,但不适用于其他服务(例如,kubernetes 又名 GKE)。此选项允许覆盖默认值并指定任意指标前缀。
  • location_label:使用此选项指定资源标签,该标签标识筛选指标时 Google Cloud 服务的位置(例如区域或地区)。例如,Google Cloud 使用类似 resource.label.locationresource.label.zone 的标签来表示资源的区域或地区。这是用户的可选配置。

配置示例

编辑
  • 启用 metrics metricset 以从 elastic-observability 项目中的 europe-west1-c 区域下的所有区域收集指标。指定了两组指标:第一组用于收集 CPU 使用时间和利用率,聚合对齐器为 ALIGN_MEAN;第二组用于收集正常运行时间,聚合对齐器为 ALIGN_SUM。这些指标类型都具有 240 秒的摄取延迟时间和 60 秒的采样周期。在下面的配置中指定 period300s 后,Metricbeat 将每 5 分钟从 Google Cloud 收集计算指标,并为每个指标类型应用给定的聚合对齐器。

    - module: gcp
      metricsets:
        - metrics
      zone: "europe-west1-c"
      project_id: elastic-observability
      credentials_file_path: "your JSON credentials file path"
      exclude_labels: false
      period: 300s
      metrics:
        - aligner: ALIGN_MEAN
          service: compute
          metric_types:
            - "instance/cpu/usage_time"
            - "instance/cpu/utilization"
        - aligner: ALIGN_SUM
          service: compute
          metric_types:
            - "instance/uptime"
  • 启用 metrics metricset 以从 elastic-observability 项目中的 europe-west1-c 区域下的所有区域收集指标。指定了两组指标:第一组用于收集 CPU 使用时间和利用率,聚合对齐器为 ALIGN_MEAN;第二组用于收集正常运行时间,聚合对齐器为 ALIGN_SUM。这些指标类型都具有 240 秒的摄取延迟时间和 60 秒的采样周期。在下面的配置中指定 period60s 后,Metricbeat 将每分钟从 Google Cloud 收集计算指标,且不进行聚合。在这种情况下,将忽略配置中指定的对齐器。

    - module: gcp
      metricsets:
        - metrics
      zone: "europe-west1-c"
      project_id: elastic-observability
      credentials_file_path: "your JSON credentials file path"
      exclude_labels: false
      period: 60s
      metrics:
        - aligner: ALIGN_MEAN
          service: compute
          metric_types:
            - "instance/cpu/usage_time"
            - "instance/cpu/utilization"
        - aligner: ALIGN_SUM
          service: compute
          metric_types:
            - "instance/uptime"
  • 启用 metrics metricset 以从 elastic-observability 项目中的 europe-west1-c 区域下的所有区域收集指标。将收集一组指标:GCP GKE 中容器的核心使用时间。请注意,必须使用 service_metric_prefix 来覆盖默认指标前缀,因为对于 GKE 指标,所需的前缀是 kubernetes.io/

    - module: gcp
      metricsets:
        - metrics
      zone: "europe-west1-c"
      project_id: elastic-observability
      credentials_file_path: "your JSON credentials file path"
      exclude_labels: false
      period: 1m
      metrics:
        - service: gke
          service_metric_prefix: kubernetes.io/
          metric_types:
            - "container/cpu/core_usage_time"
  • 启用 metrics metricset 以从 elastic-observability 项目中的 us-east4 区域收集指标。从新的 GCP 服务 aiplatform 中收集预测模型的副本数。由于这是一个新服务,此 metricset 默认情况下不支持,因此用户需要提供服务标签 (resource.label.location),用户希望使用该服务标签来筛选传入数据

    - module: gcp
      metricsets:
        - metrics
      project_id: "elastic-observability"
      credentials_json: "your JSON credentials"
      exclude_labels: false
      period: 1m
      location_label: "resource.label.location" # This is an optional configuration
      regions:
      - us-east4
      metrics:
        - service: aiplatform
          metric_types:
              - "prediction/online/replicas"

字段

有关 metricset 中每个字段的描述,请参阅导出的字段部分。

以下是此 metricset 生成的示例文档

{
    "@timestamp": "2017-10-12T08:05:34.853Z",
    "cloud": {
        "account": {
            "id": "elastic-observability",
            "name": "elastic-observability"
        },
        "instance": {
            "id": "4049989596327614796",
            "name": "nchaulet-loadtest-horde-master"
        },
        "machine": {
            "type": "n1-standard-8"
        },
        "provider": "gcp"
    },
    "cloud.availability_zone": "us-central1-a",
    "cloud.region": "us-central1",
    "event": {
        "dataset": "gcp.metrics",
        "duration": 115000,
        "module": "gcp"
    },
    "gcp": {
        "labels": {},
        "metrics": {
            "instance": {
                "uptime_total": {
                    "value": 791820
                }
            }
        }
    },
    "host": {
        "id": "4049989596327614796",
        "name": "nchaulet-loadtest-horde-master"
    },
    "metricset": {
        "name": "metrics",
        "period": 10000
    },
    "service": {
        "type": "gcp"
    }
}