使用 Cloud Monitoring 监控实例

本文档介绍了如何使用 Cloud Monitoring 控制台监控 Spanner 实例。

Cloud Monitoring 控制台提供了多种监控工具, Spanner:

如果您希望以编程方式监控 Spanner,请使用 Cloud Client Cloud Monitoring 的库,用于检索 指标。

使用 Cloud Monitoring 精选信息中心

Cloud Monitoring 为您提供了一个精心打造的信息中心,其中汇总了 有关 Spanner 实例的信息,包括:

  • 突发事件:由用户创建且处于已建立、处理中或已解决状态的监控提醒
  • 活动:Spanner 审核日志列表(如果已启用且可用)
  • 实例:您的 Spanner 实例的简要摘要,包括计算容量、数据库计数和实例运行状况
  • 吞吐量和存储空间使用情况的汇总图表

如需查看 Spanner 信息中心,请执行以下操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring 或使用如下按钮:

    转到“监控”

  2. 如果导航窗格中显示资源,请选择资源,然后选择 Cloud Spanner。否则,请选择信息中心,然后选择名为 Cloud Spanner 的信息中心。

查看实例和数据库详情

打开 Spanner 的精选信息中心后,它会显示汇总 所有实例的数据点击实例下的实例名称即可查看有关特定实例的更多详细信息。

信息中心显示实例元数据、实例中的数据库,以及按区域划分的各种指标的图表等信息。

在实例信息中心页面内,您还可以查看该实例中特定数据库的图表:

  1. 在右侧的实例指标图表上方,点击 Database metrics(数据库指标)。

  2. Select a breakdown(选择细分项)下拉列表中,选择要查看其图表的数据库。

    Cloud Monitoring 控制台将显示该数据库的图表。

为 Spanner 指标创建自定义图表

您可以使用 Cloud Monitoring 为 Spanner 创建自定义图表 指标。您可以使用 Metrics Explorer 创建临时图表,也可以创建在自定义信息中心上显示的图表。

尤其是,您可以使用 Cloud Monitoring 创建一个自定义图表,该图表可显示两个或更多指标之间是否相互关联。例如,您可以检查 Spanner 实例中 CPU 利用率延迟时间之间的关联,它可能表明您的实例需要更多计算容量或者您的某些查询导致 CPU 利用率过高。

要开始使用此示例,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring 或使用如下按钮:

    转到“监控”

  2. 如果导航窗格中显示 Metrics Explorer,请选择它。 否则,请选择资源,然后选择 Metrics Explorer

  3. 点击查看选项标签页,然后选中 Log scale on Y-axis(Y 轴对数刻度)复选框。当某个指标的值远大于其他指标的值时,此选项可帮助您比较多个指标。

  4. 在右侧窗格上方的下拉列表中,选择

  5. 点击指标标签页。您现在可以向图表中添加指标。

要向图表中添加延迟时间指标,请按照以下步骤操作:

  1. Find resource type and metric(查找资源类型和指标)框中,输入值 spanner.googleapis.com/api/request_latencies,然后点击该框下方显示的行。
  2. 过滤框中,输入值 instance_id,然后输入要检查的实例 ID,并点击应用
  3. 聚合器下拉列表中,点击上限
  4. 可选:更改延迟时间百分位:

    1. 点击显示高级选项
    2. 点击校准器下拉列表,然后点击您要查看的延迟时间百分位。

      在大多数情况下,您应查看第 50 百分位延迟时间,以了解典型的延迟时间;或者查看第 99 百分位延迟时间,以了解请求中处理速度最慢的 1% 的延迟时间。

要将 CPU 利用率指标添加到图表中,请按照以下步骤操作:

  1. 点击 添加指标
  2. Find resource type and metric(查找资源类型和指标)框中,输入值 spanner.googleapis.com/instance/cpu/utilization,然后点击该框下方显示的行。
  3. 过滤框中,输入值 instance_id,然后输入要检查的实例 ID,并点击应用
  4. 聚合器下拉列表中,点击上限

您现在已经有了一个图表,该图表显示了 Spanner 实例的 CPU 利用率和延迟时间指标。如果两个指标均高于预期,则您可以采取其他措施来纠正此问题

如需详细了解如何创建自定义图表,请参阅 Cloud Monitoring 文档

为 Spanner 指标创建提醒

创建 Spanner 实例时,您可以选择 计算容量。随着实例工作负载的变化 Spanner 不会自动调整实例的计算容量。 因此,您需要设置多个提醒,以确保该实例的 CPU 利用率不超过建议的最大值,且存储量不超过建议的上限

以下示例展示了如何为某些 Spanner 指标设置提醒政策。如需查看可用指标的完整列表,请参阅 Spanner 的指标列表

高优先级 CPU

若要创建在 Spanner 的高优先级 CPU 利用率高于建议阈值时触发的提醒政策,请使用以下设置。

新建条件
字段

资源和指标 资源菜单中,选择 Spanner 实例
指标类别菜单中,选择实例
指标菜单中,选择按优先级划分的 CPU 利用率

(metric.type 为 spanner.googleapis.com/instance/cpu/utilization_by_priority)。
过滤 instance_id = YOUR_INSTANCE_ID
priority = high
跨时间序列
时间序列分组依据
多区域实例为 location
区域实例则将其留空。
跨时间序列
时间序列聚合
sum
滚动窗口 10 m
滚动窗口函数 mean
配置提醒触发器
字段

条件类型 Threshold
提醒触发器 Any time series violates
阈值位置 Above threshold
阈值 多区域实例为 45%
区域实例为 65%
重新测试窗口 10 minutes

CPU 24 小时滚动平均值

如需创建当 Spanner 的 CPU 利用率 24 小时滚动平均值高于建议阈值时触发的提醒政策,请使用以下设置。

新建条件
字段

资源和指标 资源菜单中,选择 Spanner 实例
指标类别菜单中,选择实例
指标菜单中,选择平滑 CPU 利用率

(metric.type 为 spanner.googleapis.com/instance/cpu/smoothed_utilization)。
过滤 instance_id = YOUR_INSTANCE_ID
跨时间序列
时间序列聚合
sum
滚动窗口 10 m
滚动窗口函数 mean
配置提醒触发器
字段

条件类型 Threshold
提醒触发器 Any time series violates
阈值位置 Above threshold
触发阈值 90%
重新测试窗口 10 minutes

存储

若要创建当 Spanner 实例的存储空间高于建议阈值时触发的提醒政策,请使用以下设置。

新建条件
字段

资源和指标 资源菜单中,选择 Spanner 实例
指标类别菜单中,选择实例
指标菜单中,选择已用存储空间

(metric.type 为 spanner.googleapis.com/instance/storage/utilization)。
过滤 instance_id = YOUR_INSTANCE_ID
跨时间序列
时间序列聚合
sum
滚动窗口 10 m
滚动窗口函数 max
配置提醒触发器
字段

条件类型 Threshold
该条件的触发条件 Any time series violates
阈值位置 Above threshold
阈值 您无需为每个节点的最大存储空间设置特定阈值。不过,我们建议 。如需了解详情,请参阅 存储空间利用率指标
重新测试窗口 10 minutes

后续步骤