本文档介绍了如何使用 Cloud Monitoring API 获取以下内容的列表或说明:
- 项目中定义的用户定义的指标类型。
- 包含项目中的时间序列数据的第三方指标类型。BindPlane 生成的指标就是第三方指标。BindPlane 指标的前缀为
workload.googleapis.com/3rd-party-app-name/
。如需查看受支持的第三方应用指标的完整列表,请参阅 BindPlane 来源文档。 - Google Cloud 提供的内置指标类型。这些指标类型可帮助您设计用户定义的指标。您还可以在文档中找到这些指标的相关信息;请参阅指标列表。
- 可用于您的项目的受监控的资源类型。您还可以在文档中找到这些资源的相关信息;请参阅受监控的资源列表。
为了在不编写任何代码的情况下运行这些方法,本页面上的协议标签页中的示例使用基于表单的 API Explorer。(如需详细了解此工具,请参阅 API Explorer。)
如需了解如何使用所选编程语言中的这些方法,请参阅本页面上的可运行代码示例。
准备工作
- 如需了解指标和受监控的资源,请参阅指标、时间序列和资源。
列出指标描述符
指标描述符是对指标进行定义的架构。要查找您感兴趣的指标的详细信息,请浏览可用的指标描述符:- 内置指标:您可以向任何现有项目发出 API 请求,也可以使用指标列表文档。
- 用户定义的指标和外部指标:您必须向定义了用户定义的指标或指标的时间序列数据所在的项目发出 API 请求。
如需详细了解指标类型的命名方式,请参阅命名规则。
列出指标类型
要获取当前的指标类型列表,请使用 metricDescriptors.list
方法。要减少返回的指标类型数量,请使用过滤条件。如需帮助确定要搜索的指标类型,请参阅值类型和指标种类。
协议
打开
metricDescriptors.list
参考页面。在标记为试用此方法的窗格中,输入以下内容:
- name:
projects/PROJECT_ID
。将PROJECT_ID
替换为您的 Google Cloud 项目的 ID。 - 过滤条件:
metric.type = starts_with("compute.googleapis.com")
- name:
点击执行。
以下示例响应显示了检索到的一些指标描述符:
"metricDescriptors": [ { "name": "projects/PROJECT_ID/metricDescriptors/compute.googleapis.com/firewall/dropped_bytes_count", "labels": [{...}], ... "description": "Count of incoming bytes dropped by the firewall.", "displayName": "Dropped bytes", "type": "compute.googleapis.com/firewall/dropped_bytes_count", ... }, { "name": "projects/PROJECT_ID/metricDescriptors/compute.googleapis.com/firewall/dropped_packets_count", "labels": [{...}], ... "description": "Count of incoming packets dropped by the firewall.", "displayName": "Dropped packets", "type": "compute.googleapis.com/firewall/dropped_packets_count", }, ... ]
每个描述符中的 type
值用于标识指标描述符,例如 compute.googleapis.com/firewall/dropped_packets_count
。此值有时也称为“指标类型”或“指标类型名称”。
如需采用 curl
命令、HTTP 请求或 JavaScript 格式查看请求,请在 API Explorer 中点击 fullscreen 全屏。
C#
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
PHP
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
如果遇到困难,请参阅排查 API 调用问题。
获取指标描述符
如需获取单个指标类型的相关信息,请使用 metricDescriptors.get
方法。此方法会返回一个指标描述符。
如需检索特定指标描述符,您必须向 API 提供指标的全名。全名由两部分组成:
- 由
projects/PROJECT_ID/metricDescriptors
组成的前缀。 - 标识指标描述符的
type
值,例如compute.googleapis.com/firewall/dropped_packets_count
。如需详细了解type
值,请参阅列出指标类型中的协议标签页。
以下是指标的全名示例:
projects/PROJECT_ID/metricDescriptors/compute.googleapis.com/firewall/dropped_packets_count
协议
如需获取 Compute Engine /firewall/dropped_packets_count
指标的描述符,请执行以下操作:
打开
metricDescriptors.list
参考页面。在标记为试用此方法的窗格中,输入以下内容:
名称:
projects/PROJECT_ID/metricDescriptors/compute.googleapis.com/firewall/dropped_packets_count
将
PROJECT_ID
替换为您的 Google Cloud 项目的 ID。
点击执行。
以下示例响应显示了该指标的描述符:
{ "name": "projects/PROJECT_ID/metricDescriptors/compute.googleapis.com/firewall/dropped_packets_count", "labels": [ { "key": "instance_name", "description": "The name of the VM instance." } ], "metricKind": "DELTA", "valueType": "INT64", "unit": "1", "description": "Count of incoming packets dropped by the firewall.", "displayName": "Dropped packets", "type": "compute.googleapis.com/firewall/dropped_packets_count", }
如需采用 curl
命令、HTTP 请求或 JavaScript 格式查看请求,请在 API Explorer 中点击 fullscreen 全屏。
C#
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
PHP
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
如果遇到困难,请参阅排查 API 调用问题。
列出受监控的资源
受监控的资源是可以受监控的云端实体。要查找具有指标的实体种类,请浏览受监控的资源类型列表。
如需获取受监控的资源的相关信息,您可以向任何现有项目发出 API 请求,也可以使用受监控的资源列表文档。
列出资源类型
要从 Monitoring API 获取受监控的资源类型的当前列表,请使用 monitoredResourceDescriptors.list
方法并提供项目 ID。
协议
打开
monitoredResourceDescriptors.list
参考页面。在标记为试用此方法的窗格中,输入以下内容:
- name:
projects/PROJECT_ID
。将PROJECT_ID
替换为您的 Google Cloud 项目的 ID。
- name:
点击执行。
以下示例响应显示了返回的一些受监控的资源类型:
{ "resourceDescriptors": [ { "type": "aiplatform.googleapis.com/Endpoint", "displayName": "AI Platform Endpoint", "description": "A Cloud AI Platform API Endpoint where Models are deployed into it.", "labels": [{...}], "name": "projects/PROJECT_ID/monitoredResourceDescriptors/aiplatform.googleapis.com/Endpoint", }, { "type": "aiplatform.googleapis.com/Featurestore", "displayName": "AI Platform Feature Store", "description": "A Cloud AI Platform Feature Store.", "labels": [{...}], "name": "projects/PROJECT_ID/monitoredResourceDescriptors/aiplatform.googleapis.com/Featurestore", },
如需采用 curl
命令、HTTP 请求或 JavaScript 格式查看请求,请在 API Explorer 中点击 fullscreen 全屏。
C#
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
PHP
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
如果遇到困难,请参阅排查 API 调用问题。
获取资源描述符
如需获取特定受监控资源描述符,请使用 monitoredResourceDescriptors.get
方法。
要检索特定的受监控的资源描述符,您必须向 API 提供描述符的全名。全名由两部分组成:
- 由
projects/PROJECT_ID/monitoredResourceDescriptors
组成的前缀。 - 用于标识受监控的资源描述符的
type
值,例如gce_instance
。如需详细了解type
值,请参阅列出资源类型中的协议标签页。
以下是受监控的资源的全名示例:
projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance
协议
如需获取 gce_instance
资源类型的描述符,请执行以下操作:
打开
monitoredResourceDescriptors.get
参考页面。在标记为试用此方法的窗格中,输入以下内容:
名称:
projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance
将
PROJECT_ID
替换为您的 Google Cloud 项目的 ID。
点击执行。
以下示例响应显示了此受监控资源的描述符:
{ "type": "gce_instance", "displayName": "VM Instance", "description": "A virtual machine instance hosted in Compute Engine.", "labels": [ { "key": "project_id", "description": "The identifier of the Google Cloud project associated with this resource, such as \"my-project\"." }, { "key": "instance_id", "description": "The numeric VM instance identifier assigned by Compute Engine." }, { "key": "zone", "description": "The Compute Engine zone in which the VM is running." } ], "name": "projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance" }
如需采用 curl
命令、HTTP 请求或 JavaScript 格式查看请求,请在 API Explorer 中点击 fullscreen 全屏。
C#
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
PHP
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
如需向 Monitoring 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
如果遇到困难,请参阅排查 API 调用问题。
后续步骤
- 如需了解如何使用 Cloud Monitoring API 读取时间序列数据,请参阅检索时间序列数据。
- 如需查看可用于用户定义指标的受监控的资源类型的列表,请参阅选择受监控的资源类型。