为 BigQuery 创建信息中心和提醒
本文档介绍如何使用 Cloud Monitoring 创建图表和提醒来监控 BigQuery 资源。
准备工作
在使用 Cloud Monitoring 之前,请确保您具有以下各项:
- Cloud Billing 帐号。
- 启用了结算功能的 BigQuery 项目。
确保以上两个条件同时满足的一种方法是完成快速入门:使用控制台。
查看和创建信息中心、图表与提醒
查看 Cloud Monitoring 信息中心
如需使用 Cloud Monitoring 监控 BigQuery 项目,请执行以下操作:
在 Google Cloud Console 中,转到监控页面。
选择您的项目名称(如果尚未在页面顶部选择该名称)。
如需查看 BigQuery 资源,请选择信息中心 > BigQuery。 在此页面上,您可以看到用户可配置的表格、事件和突发事件报告的列表,以及项目指标或数据集指标的图表。
直观呈现可用槽和已分配的槽
如需直观呈现可用的槽和已分配给项目的槽,请按照查看 Cloud Monitoring 信息中心中的说明转到 BigQuery 信息中心:
在 Google Cloud Console 中,转到监控页面。
选择信息中心 > BigQuery。
在适用于 BigQuery 的 Cloud Monitoring 信息中心上,滚动到名为槽利用率 (Slot Utilization) 的图表。
槽利用率 (Slot Utilization) 图表会同时显示在 Cloud Monitoring 默认的主信息中心以及适用于 BigQuery 的 Cloud Monitoring 信息中心。
创建信息中心和图表
如需在您自己的图表和信息中心内显示由 Cloud Monitoring 收集的指标,请执行以下操作:
在 Google Cloud Console 中,转到监控页面。
选择 Dashboards > Create Dashboard。
点击 Add Chart。您会看到“Add Chart”页面:
在 Find resource type and metric 面板字段中:
- 在 Resource type 下拉列表中,选择 Global。您可能需要展开 Resource types 列表,以便找到 Global 选项。
- 在 Metric 下拉列表中,选择 Query execution time。
Aggregation 窗格字段用于控制执行时间数据的显示方式。您可以修改这些字段的默认设置。
点击保存。
创建提醒
如需创建提醒政策,以便 BigQuery 查询的执行时间的第 99 百分位超过用户定义的限制时触发此政策,请使用以下设置。
新建条件 字段 |
值 |
---|---|
资源和指标 | 在资源菜单中,选择 BigQuery 项目。 在指标类别菜单中,选择查询。 在指标菜单中,选择查询执行时间。 |
过滤 | |
跨时间序列 时间序列分组依据 |
priority |
跨时间序列 时间序列聚合 |
99th percentile |
滚动窗口 | 5 m |
滚动窗口函数 | sum |
配置提醒触发器 字段 |
值 |
---|---|
条件类型 | Threshold |
提醒触发器 | Any time series violates |
阈值位置 | Above threshold |
阈值 | 您可确定此值;不过,建议将阈值设为 60 秒。 |
重新测试窗口 | most recent value |
可用于直观呈现数据的指标
可用指标包括以下各项,时间延迟最多可达数个小时。
资源类型 | 名称 | 单位 | 说明 |
---|---|---|---|
BigQuery |
Scanned bytes
|
每分钟字节数 | 扫描的字节数 |
BigQuery |
Scanned bytes billed
|
每分钟字节数 | 收费的已发送字节数 出于多种原因,“Scanned bytes”和“Scanned bytes billed”可能有所不同。
|
BigQuery |
Query time
|
秒 | 非缓存的查询执行时间(单位为秒) |
BigQuery |
Slots allocated
|
槽 | 在任意时刻分配给项目的槽数。您也可以认为,这就是项目所使用的槽数。 槽按结算帐号分配,多个项目可以共用同一预留中的槽。 |
BigQuery |
Slots allocated by job type
|
槽 | 在任意时刻分配给项目的槽数,按作业类型划分。您也可以认为,这就是项目所使用的槽数。目前,加载和导出作业都属于免费操作,这些操作在资源的公开池中运行。 槽按结算帐号分配,多个项目可以共用同一预留中的槽。 |
BigQuery |
Slots available
|
槽 | 项目可用的总槽数。 如果项目与其他项目共用预留的槽数,则不会指出其他项目使用的槽数。 |
BigQuery 数据集 |
Stored bytes
|
字节 | 数据集中存储的字节数;如果数据集中表的数量未超过上限 100 个,则系统将按表名称显示每个表存储的字节数。如果数据集中表的数量超过上限 100 个,则所有超出的表将汇总一并报告,并且汇总的表名称为空字符串。 |
BigQuery 数据集 |
Tables
|
表 | 数据集中的表数 |
BigQuery 数据集 |
Uploaded billed bytes
|
每分钟字节数 | 上传到数据集中任何表的已计费字节数 |
BigQuery 数据集 |
Uploaded bytes
|
每分钟字节数 | 上传到数据集中任何表的字节数 出于多种原因,“Uploaded billed bytes”和“Uploaded bytes billed”可能有所不同。
|
BigQuery 数据集 | Uploaded rows | 每分钟行数 | 上传到数据集中任何表的记录数 |
已知问题
如果没有运行任何查询,则系统不会为“Slots allocated”或“Slots available”返回数据,也不会为任何查询相关变量返回数据。请缩小以查看数据。
如果查询同时在 US 和 EU 运行,则“Slots allocated”和“Slots available”可能不正确。
“Slots allocated”报告为时间段(时间段的宽度取决于图表的缩放级别)内的平均值。缩放图表可能会改变“Slots allocated”的值。如果放大到 1 小时或 1 小时以内的时间段,系统就会显示“Slots allocated”的真实值。在此范围内,对于图表上可见的任意时间,
avg(slots allocated) = slots allocated
。Cloud Monitoring 图表中的数据仅适用于所选项目。目前尚不支持多项目监控。
指标为在某个时间点采样的瞬时值,可能缺少采样间隔之间的数据点。例如,作业计数指标是每分钟采样的。该值是该特定时间点的作业数,而不是整个一分钟内最大的作业数。