插件 〉Google BigQuery


开发者
Grafana Labs

资源

注册以接收偶尔的产品新闻和更新



数据源
grafana

Google BigQuery

  • 概述
  • 安装
  • 更改日志
  • 相关内容

Google BigQuery 数据源 for Grafana

Google BigQuery 数据源插件允许您在 Grafana 中查询和可视化 Google BigQuery 数据。

安装插件

  1. 导航到 BigQuery 插件主页。

  2. 从左侧菜单中,点击 **安装插件** 按钮。

    显示 **安装** 选项卡。

验证插件是否已安装

  1. 在 Grafana 中,导航到 **配置** > **数据源**。
  2. 从右上角,点击 **添加数据源** 按钮。
  3. 在搜索框中搜索 Google BigQuery,并将鼠标悬停在 Google BigQuery 搜索结果上。
  4. 点击 Google BigQuery 的 **选择** 按钮。如果您可以点击 **选择** 按钮,则表示它已安装。

在 Grafana 中配置 Google BigQuery 数据源

按照 这些说明 添加新的 Google BigQuery 数据源,并输入配置选项

要求

插件需要启用以下 Google API 才能正常工作

身份验证

Google BigQuery 数据源提供两种身份验证方式

  • 通过上传 Google 服务帐户密钥
  • 通过从 Google 元数据服务器自动检索凭据(仅在 GCE 虚拟机上运行 Grafana 时可用)

Google 服务帐户身份验证

创建 Google Cloud Platform (GCP) 服务帐户。BigQuery 数据查看器角色和作业用户角色提供了 Grafana 所需的所有权限。

Google 元数据服务器

当 Grafana 在 Google Compute Engine (GCE) 虚拟机上运行时,Google BigQuery 数据源可以从元数据服务器自动检索默认项目 ID 和身份验证令牌。为此,您需要确保您拥有一个服务帐户,该帐户被设置为虚拟机的默认帐户,并且该服务帐户已被授予对 BigQuery API 的读取权限。

配置

可以使用配置文件和 Grafana 的配置系统来配置数据源。有关其工作原理(包括您可以为此数据源设置的所有设置)的信息,请参阅 配置 Grafana 数据源

以下是一些配置示例

使用服务帐户

# config file version (with private key in secureJsonData)
apiVersion: 1
datasources:
  - name: BigQuery DS
    type: grafana-bigquery-datasource
    editable: true
    enabled: true
    jsonData:
      authenticationType: jwt
      clientEmail: your-client-email
      defaultProject: your-default-bigquery-project
      tokenUri: https://oauth2.googleapis.com/token
    secureJsonData:
      privateKey: your-private-key
# config file version (with private key path in jsonData)
apiVersion: 1
datasources:
  - name: BigQuery DS
    type: grafana-bigquery-datasource
    editable: true
    enabled: true
    jsonData:
      authenticationType: jwt
      clientEmail: your-client-email
      defaultProject: your-default-bigquery-project
      tokenUri: https://oauth2.googleapis.com/token
      privateKeyPath: '/etc/secrets/bigquery.pem'

使用 Google 元数据服务器

# config file version
apiVersion: 1
datasources:
  - name: BigQuery DS
    type: grafana-bigquery-datasource
    editable: true
    enabled: true
    jsonData:
      authenticationType: gce

导入使用 DoiT International BigQuery DataSource 插件创建的查询

对于所有使用 Grafana 8.5+ 的用户,可以通过简单地将数据源更改为 Grafana BigQuery 来导入使用 DoiT International BigQuery 社区插件创建的查询。请注意,查询将被导入为原始 SQL 查询。

查询数据源

查询编辑器允许您查询 Google BigQuery 数据源。查询可以包含宏,这些宏可以简化语法并允许使用动态部分。

SQL 查询编辑器

SQL 查询编辑器对标准 SQL 提供丰富的支持,并为以下内容提供详细的自动完成功能

  • BigQuery 标准 SQL 语言语法。
  • BigQuery 数据集、表和列。
  • 宏和模板变量。

SQL 查询编辑器还支持查询验证和代码格式化。

查询验证

SQL 查询编辑器会验证查询,并为您提供有关查询错误的详细信息。如果查询有效,则会显示估计的查询大小。

扩展代码编辑器

SQL 查询编辑器允许您在全屏代码编辑器中编辑查询,使处理长查询变得更加容易

键盘快捷键

  • CMD/Ctrl + Return - 运行查询

可视化查询编辑器

可视化查询编辑器允许在没有 SQL 知识的情况下创建简单的 BigQuery 查询。 它支持基本聚合、过滤、分组、排序和原始查询预览。 与 SQL 查询编辑器类似,可视化查询编辑器在创建查询时也会验证您的查询。

查询为时间序列

在将 TIMESTAMP 字段添加到查询后,可以选择时间序列可视化选项。 此字段将用作时间戳。 您可以使用可视化选项选择时间序列可视化。 Grafana 将没有显式时区的时区行解释为 UTC。 除了时间之外的任何列都将被视为值列。

查询为表格

表格可视化将始终适用于任何有效的 Google BigQuery 查询。

为了简化语法并允许动态部分(例如日期范围过滤器),查询可以包含宏。

以下是一个使用宏的查询示例,该宏将使用 Grafana 的时间过滤器

SELECT
      time_column,
      value_column,
FROM `project.dataset.table`
WHERE $__timeFilter(time_column)
宏示例描述
$__timeFilter(timeColumn)将被使用指定名称的时间范围过滤器替换。
$__timeGroup(timeColumn,interval)将被可用于 GROUP BY 子句的表达式替换。

模板和变量

要添加新的 Google BigQuery 查询变量,请参考 添加查询变量.

创建变量后,您可以使用 变量语法 在您的 Google BigQuery 查询中使用它。 有关变量的更多信息,请参考 模板和变量.

了解更多

在 Grafana Cloud 上安装 Google BigQuery

有关更多信息,请访问有关 插件安装 的文档。

变更日志

1.9.1

  • 日常工作: 将 github.com/grafana/grafana-plugin-sdk-go 更新到 v0.245.0 (#293)
  • 日常工作: 将 micromatch 从 4.0.5 更新到 4.0.8 (#292)
  • 日常工作: 将 webpack 从 5.86.0 更新到 5.94.0 (#291)

1.9.0

  • 功能: 添加对自定义服务端点的支持 (#266)
  • 日常工作: 为自定义服务端点添加日志记录 (#286)
  • 日常工作: 将 github.com/grafana/grafana-plugin-sdk-go 更新到 v0.241.0 (#285)

1.8.0

  • 修复: 使编辑器标签可点击 (#276)
  • 日常工作: 插件现在需要 Grafana 10.3.6 或更高版本 (#275)

1.7.1

  • 修复: 删除与 grafana9 不兼容的更改 (#273)

1.7.0

  • 功能: 允许指定最大可计费字节数 (#254)
  • 修复: 在 timeGroup 宏中处理亚秒间隔 (#262)
  • 修复: 修复日志行格式 (#255)
  • 修复: 使编辑器标签可点击 (#256)
  • 修复: 更新文档以列出正确的宏 (#259)
  • 日常工作: 更新依赖项 (#264)
  • 日常工作: 一致的图标 (#261)

1.6.1

  • 日常工作: 更新依赖项

1.6.0

  • 日常工作: 更新依赖项,插件关键词
  • 功能: 查询编辑器:自动位置选择 (#244)
  • 功能: 查询编辑器:更好的项目选择流程 (#239)

1.5.0

  • 日常工作: 添加缺少的处理位置 (#231)
  • 功能: 从前端隐藏敏感的项目信息 (#236)
  • 日常工作: 更新 create-plugin 和依赖项 #240
  • 功能: 将 grafana-http-headers 作为查询的配置标签附加 (#241)

1.4.1

  • 功能: 为代码编辑器添加宏自动完成
  • 功能: 更新配置页面以遵循最佳实践
  • 日常工作: 将 grafana-plugin-sdk-go 升级到最新版本

1.4.0

  • 日常工作: 更新 go 和 npm 依赖项。
  • 修复: 修复查询编辑器中的 A11y 问题。
  • 功能: 添加对从驱动器查询数据库的支持。

1.3.1

  • 日常工作: 将 grafana-plugin-sdk-go 更新到 0.171.0

1.3.0

  • 功能: 添加对 PDC 的支持。

1.2.9

  • 日常工作: 在每个插件实例中使用 SQLDS。

1.2.8

  • 修复: 由于缺少 refId,变量查询错误 #180

1.2.7

  • 日常工作: 更新变量编辑器以使用新的 API。 这也将修复 timeFilter 宏的问题。 #174

1.2.6

  • 日常工作 - 后端二进制文件现在使用 golang 1.20.4 编译

1.2.5

  • 日常工作: 升级 go 版本

1.2.4

  • 日常工作: 升级到最新的 grafana-google-sdks #166
  • 日常工作: 迁移到 create-plugin #165
  • 添加了处理位置:哥伦布(俄亥俄州)、马德里、米兰和巴黎 #161

1.2.3

  • 日常工作: 将 grafana/experimental 升级到 1.0.1 #144
  • 修复: 更新时间宏以取消引用时间变量 #155
  • 修复: 不要在宏 timegroup 中出现恐慌 #156

1.2.2

  • 日常工作: 更新到 Golang 1.19 #149

1.2.1

  • 查询: 修复查询位置设置不正确的问题。 (#140)

1.2.0

  • 数据源配置: 添加对在数据源配置中使用私钥路径的支持。

1.1.1

  • 修复: 与 Grafana 版本 8.0.0 的兼容性问题。 (#121)

1.1.0

此版本提供了一项新功能,允许使用单个数据源使用多个 BigQuery 项目。 为了在查询编辑器中查看 GCP 项目列表,您需要启用 Google Cloud 资源管理器 API.

  • 功能: 添加对多项目设置的支持。 (#112)
  • 日常工作: 更新 @grafana/experimental 依赖项。 (#115)
  • 修复: 代码编辑器查询更改时不再重置处理位置。 (#114)

1.0.3

  • 数据类型支持: 添加对查询基本类型数组的支持。
  • 修复: 在验证查询时插值 $__interval$__interval_ms 变量。

1.0.2

  • 修复: 使用 GCE 身份验证时使用配置的默认项目。

1.0.1

  • 身份验证: 允许在使用 GCE 身份验证时配置默认项目。

1.0.0

  • 可视化查询构建器: 支持 IS [NOT] NULL 运算符。
  • 代码编辑器: 添加模板变量建议。
  • 查询构建器: 在将数据源更改为 google-bigquery-datasource 时,自动导入 doitintl-bigquery-datasource 查询。 **仅适用于 Grafana 8.5 以上版本。**

0.1.15

  • 数据类型支持 添加对 GEOGRAPHY、BIGNUMERIC 和 BYTES 数据类型的支持。
  • 代码编辑器: 添加在扩展编辑器中编辑查询的可能性。
  • 可视化查询构建器: 在选择中支持星号。
  • 可视化查询构建器: 格式化预览。
  • 可视化查询构建器: 在选择聚合时打开 group by。
  • 修复: 在数据集更改时重置查询。
  • 修复: 删除未使用的配置设置。
  • 修复: 在处理位置更改时执行查询验证。
  • 更新可用处理位置的列表。
  • 更新最低 Grafana 版本。

0.1.14

  • 修复: 在表格更改时重置可视化查询构建器中的查询。
  • 修复: 删除可视化查询构建器中的去抖状态更新。
  • 修复: 在代码编辑器中正确格式化模板变量和宏。
  • 修复: 不要运行隐藏的查询。
  • 修复: 为验证请求正确插值模板变量。

0.1.13

  • 数据源设置: 修复了导致无法重置和更改用于身份验证的 JWT 令牌的错误。

0.1.12

  • 注释: 添加注释支持。
  • 可视化查询构建器: 可视化查询构建器现在为查询设置了默认限制(50)。
  • 可视化查询构建器: 使用可视化查询构建器构建的查询不再自动执行 - “运行查询”按钮将像代码编辑器中一样显示。
  • 可视化查询构建器: 可视化查询构建器生成的查询将表包装在反引号中。
  • 可视化查询构建器: 将聚合列添加到“排序依据”选择中。
  • 可视化查询构建器: 修复用户更改过滤器运算符时的错误。
  • 自动完成: 添加对宏的完成。
  • 查询验证: 将时间范围添加到查询验证 API 调用中。 修复了使用使用时间范围的宏时的查询验证错误。
  • 查询验证: 在使用不受支持的宏时返回验证。
  • 修复: timeGroup 宏现在应该被正确插值。

0.1.11

  • 修复: 允许运行脚本查询。
  • 查询验证: 将插值添加到验证响应中。

0.1.10

  • 代码编辑器: 添加格式化查询的选项。
  • 代码编辑器: 当用户将焦点移出代码编辑器时,不要运行查询。
  • 查询验证: 如果查询没有更改,则不要重新验证查询。

0.1.9

  • 自动完成: 添加对 WHERE 子句中列的建议。
  • 查询验证: 在查询更改时积极运行查询验证,而不是在焦点移出时。
  • 代码编辑器: 当按下 CTRL/CMD+Return 时运行查询。

0.1.8

  • 自动完成: 改善表格建议。
  • 查询验证:在执行预演之前,先插入模板变量和宏。

0.1.7

  • 自动完成:添加对摄取时间分区表过滤器的建议。
  • 代码编辑器:使自动完成对关键字和运算符不区分大小写。
  • 代码编辑器:使查询字节估计更友好。

0.1.6

  • 代码编辑器:添加使用查询预演进行验证。

0.1.5

  • 自动完成:修复了损坏的数据集/表格建议。

0.1.4

  • 可视化查询构建器:介绍可视化查询构建器。
  • 代码编辑器:使原始查询编辑器在 Grafana < 8.2.x 中工作。

0.1.3

  • 自动完成:对逻辑运算符进行重复数据删除。
  • 代码编辑器:不要在失焦时运行查询,改进查询标题组件。

0.1.2

  • 数据类型支持:处理 NUMERIC 数据类型。

0.1.1

  • 自动完成:修复了如果项目 ID 或数据集 ID 包含 Monaco 的默认 SQL 语言定义中定义的关键字,则损坏的数据集/表格建议。

0.1.0

初始 Beta 版本。