监控活跃查询

本页介绍了如何监控和排查 Spanner 实例中运行的查询。活跃查询是长时间运行且可能影响实例性能的查询。监控这些查询有助于确定出现实例延迟和 CPU 使用率较高的原因。

您可以使用 Google Cloud 控制台在 Spanner 的查询分析页面上查看正在运行的查询。这些查询会按查询的开始时间排序。如果有许多有效查询,则由于 Spanner 对数据收集实施内存限制,结果可能会仅限于总查询的一部分。

准备工作

如需获得查看有效查询所需的权限,请让您的管理员为您授予实例的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

查看活跃查询

如需查看每个数据库的活跃查询,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 Spanner 实例页面。

    前往“Spanner 实例”页面

  2. 点击包含要监控的查询的实例。

  3. 在导航菜单中,点击查询数据分析

  4. 使用数据库菜单指定要监控的数据库。

  5. 点击活跃查询标签页。此标签页包含有关有效查询的摘要,以及包含运行时间最长的前 50 个有效查询的表格。

查看运行时间最长的查询

下表介绍了有效查询标签页上的运行时间最长的查询表中的列:

列名 说明
查询 ID 查询的唯一标识符。
查询 SQL 查询文本。
指纹 REQUEST_TAG 或 SQL 查询文本的哈希值。
开始时间 查询开始时的时间戳。
查询时长 活跃查询的运行时长。
操作 包含用于终止查询的链接。

自动刷新切换开关处于开启状态时,显示屏每 60 秒刷新一次。

终止查询

您可以终止在实例中运行的查询。终止查询可能会有助于释放资源并减轻实例的负载。终止查询是尽力而为的操作。

您发起终止后,Google Cloud 控制台页面会刷新。如果终止成功,系统会从表中移除相应查询。如果终止失败,则会在后台终止,并且查询会继续显示在运行时间最长的查询表中。

当服务器繁忙时,Spanner 可能不会取消查询。您可以再次尝试终止查询以将其取消。

如需获得终止查询所需的权限,请让您的管理员为您授予实例的 Cloud Spanner Database Reader (spanner.databaseReader) IAM 角色。

如需终止查询,请执行以下操作:

  1. 运行时间最长的查询表中选择要终止的查询。
  2. 操作列中,点击终止
  3. 终止查询窗口中,点击确认

后续步骤