插件 〉Google Cloud Trace


开发者

GCP 追踪团队

订阅接收不定期产品新闻和更新



数据源
商业

Google Cloud Trace

  • 概览
  • 安装
  • 更新日志
  • 相关内容

Google Cloud Trace 数据源

概览

Google Cloud Trace 数据源是 Grafana 的一个后端数据源插件,它允许用户在 Grafana 中查询和可视化他们的 Google Cloud 追踪和 Span。

image info

支持的 Grafana 版本

9.0.x+

设置

下载

将此插件下载到运行 Grafana 的机器上,可以使用 git clone 或直接下载 ZIP 文件。为本指南的目的,我们假设用户 "alice" 已将其下载到本地目录 "/Users/alice/grafana/" 中。如果您使用诸如 grafana 的用户运行 Grafana 服务器,请确保该用户具有该目录的访问权限。

启用 Cloud Resource Manager API

您需要启用 Resource Manager API。否则,您的云项目将不会显示在下拉菜单中。

您可以按照以下步骤启用它

  1. 在 GCP 中导航到Cloud Resource Manager API 页面并选择您的项目
  2. 点击 启用 按钮

生成 JWT 文件并分配 IAM 权限

  1. 如果您没有 GCP 项目,请添加一个新的 GCP 项目。链接
  2. 在 Google API 控制台中打开凭据页面
  3. 点击 创建凭据,然后点击 服务账户
  4. 在创建服务账户页面,输入服务账户详细信息
  5. 创建服务账户页面,填写服务账户详细信息,然后点击创建并继续
  6. 授予此服务账户访问项目权限部分,将Cloud Trace 用户角色添加到Cloud Trace下的服务账户。点击完成
  7. 在下一步中,点击您刚刚创建的服务账户。在密钥标签下,选择添加密钥创建新密钥
  8. 选择密钥类型JSON并点击创建。一个 JSON 密钥文件将被创建并下载到您的计算机上

如果您想访问多个云项目中的追踪数据,需要确保该服务账户拥有读取所有项目日志的权限。

如果您在 GCE VM 上托管 Grafana,也可以使用Compute Engine 服务账户。您需要确保该服务账户拥有足够的权限来访问所有项目中的追踪数据。

服务账户模拟

您也可以配置插件使用服务账户模拟。您需要确保此插件使用的服务账户具有 iam.serviceAccounts.getAccessToken 权限。此权限包含在诸如Service Account Token Creator 角色 (roles/iam.serviceAccountTokenCreator) 中。此外,此插件模拟的服务账户需要 Cloud Trace 用户和项目列表权限。

Grafana 配置

  1. 重启 Grafana 后,导航到 配置 -> 数据源(或路径 /datasources
  2. 点击“添加数据源”
  3. 选择“Google Cloud Trace”
  4. 在 JWT 文件中提供凭据,可以通过文件选择器或粘贴文件内容的方式。
  5. 点击“保存并测试”以测试是否可以从 Cloud Trace 查询追踪数据。

image info

使用方法

Grafana Explore

  1. 配置后,导航到 Explore(或路径 /explore)。

  2. 从数据源下拉列表中选择“Google Cloud Trace”。

  3. 为查询类型选择 FilterTrace ID

  4. 对于 Trace ID 查询,只需输入追踪 ID 即可查看追踪及其关联的 span。

  5. 对于 Filter 查询,输入任意数量的过滤器,格式为 [key]:[value]。这些过滤器通常用于匹配追踪上的标签。这些过滤器是叠加的。您还可以使用一些特殊的易用键

    • RootSpan 匹配包含给定根 span 名称的任何追踪
    • SpanName 匹配包含给定 span 名称的任何追踪
    • HasLabel 匹配包含给定标签键的任何追踪
    • MinLatency 匹配延迟大于给定延迟的任何追踪
    • Version 匹配包含标签 g.co/gae/app/version 和给定服务版本的任何追踪
    • Service 匹配包含标签 g.co/gae/app/module 和给定服务名称的任何追踪
    • Status 匹配包含标签 /http/status_code 和给定状态的任何追踪
    • URL 匹配包含标签 /http/url 和给定 URL 的任何追踪
    • Method 匹配包含标签 /http/method 和给定 HTTP 方法的任何追踪

    执行 Filter 查询后,将显示一个表格,其中包含所有匹配的追踪(示例:http.scheme:http http.server_name:testserver MinLatency:500ms

支持的变量

该插件当前支持 GCP 项目变量和追踪 ID 变量。项目变量是查询变量,追踪 ID 是文本变量或自定义变量。

许可

Cloud Trace Logo (src/img/logo.svg) 来自 Google Cloud 的官方图标和示例图

正如评论所述,JWTFormJWTConfigEditor 主要基于 Apache-2.0 许可的grafana-google-sdk-react

在 Grafana Cloud 上安装 Google Cloud Trace

欲了解更多信息,请访问关于插件安装的文档。

更新日志

1.1.0 (2023-10-07)

  • 支持服务账户模拟
  • 支持项目和追踪 ID 变量
  • 更新依赖项

1.0.0 (2023-06-16)

初次发布。