适用于 Grafana 的 Azure DevOps 数据源
通过适用于 Grafana 的 Azure DevOps 数据源插件,您可以在 Grafana 中查询和可视化 Azure DevOps 数据。
开始之前
- 确保您拥有 Azure DevOps 账户和个人访问令牌。
- 确保您拥有以下账户类型之一
- 确保已启用 Enterprise 插件附加功能。
已知限制
- 模板变量不能进行多选;仅支持单选。
- 该插件仅提供以下功能集
涵盖的功能
服务 | API | 参考文档 |
---|---|---|
核心 | 项目 - 列表 | API |
Git | 仓库 - 列表 | API |
拉取请求 - 列表 | API | |
构建 | 构建 - 列表 | API |
定义 - 列表 | API | |
管道 | 管道 - 列表 | API |
运行 - 列表 | API | |
发布 | 定义 - 列表 | API |
部署 - 列表 | API | |
发布 - 列表 | API |
安装 Azure DevOps 数据源插件
要安装数据源,请参阅安装。
从 Azure DevOps 获取个人访问令牌
要获取个人访问令牌,请参阅Azure DevOps 文档 - 个人访问令牌部分。
为您的 API 令牌设置必要的读取权限。这包括 workItems.read、code.read、code.status、build.read、release.read、test.read 和 packaging.read。如果您不使用特定功能,可以跳过相应的权限设置。
在 Grafana 中配置数据源
填写以下字段来添加数据源
字段 | 描述 |
---|---|
URL | 您的 Azure DevOps 实例的 URL。示例:https://dev.azure.com/xxxxxx |
PAT | Azure DevOps 个人访问令牌 (PAT)。请参阅上一节了解如何生成一个。 |
项目限制 | 要检索的项目数量。默认为 100。当组织中有超过 100 个项目时很有用 |
使用配置系统配置数据源
您可以使用配置文件和 Grafana 的配置系统来配置数据源。要详细了解配置的工作原理,包括数据源的完整设置列表,请参阅Grafana 配置。
apiVersion: 1
datasources:
- name: Azure DevOps
type: grafana-azuredevops-datasource
version: 1
orgId: 1
uid: azure_devops_001
basicAuth: false
editable: false
isDefault: false
jsonData:
url: https://dev.azure.com/xxxxxxxx
projectsLimit: 100
secureJsonData:
patToken: xxxxxxxxxxxxxxxxxxxxxxxxx
查询数据源
查询编辑器允许您从 Azure DevOps 查询不同的数据集。根据在查询编辑器中选择的查询类型,您可以从不同的 API 检索数据。
项目
- 查看数据源有权访问的组织中所有项目的列表。
- 底层 API 是 项目 - 列表。
仓库
- 检索数据源有权访问的组织中 git 仓库的列表。
- (可选)您可以指定项目 ID 来过滤指定项目中的仓库。
- 底层 API 是 仓库 - 列表。
拉取请求
- 检索指定项目的拉取请求列表。
- (可选)您可以指定仓库 ID 来过滤特定仓库的拉取请求。
- 底层 API 是 按项目获取拉取请求
构建
- 查看指定项目的构建列表。
- 项目 ID 为必填字段。
- 查询响应范围限定在仪表盘的时间范围。
maxTime
和minTime
参数将根据仪表盘的时间范围自动传递给 API。 - 底层 API 是 构建 - 列表
构建定义
- 查看指定项目的构建定义列表。
- 项目 ID 为必填字段。
- 底层 API 是 构建定义 - 列表。
管道
- 查看指定项目的管道列表。
- 项目 ID 为必填字段
- 底层 API 是 管道 - 列表
管道运行
- 获取指定管道的前 10000 次运行
- 项目 ID 和管道 ID 为必填字段
- 底层 API 是 管道运行 - 列表
发布
- 获取指定项目的发布列表
- 项目 ID 为必填字段
- 查询响应将范围限定在仪表盘的时间范围。
maxCreatedTime
和minCreatedTime
参数将根据仪表盘的时间范围自动传递给 API - 底层 API 是 发布 - 列表
发布定义
- 获取指定项目的发布定义列表
- 项目 ID 为必填字段
- 底层 API 是 发布定义 - 列表
发布部署
- 获取指定项目的发布部署列表
- 项目 ID 为必填字段
- 底层 API 是 发布部署 - 列表
模板和变量
要添加新的 Azure DevOps 查询变量,请参阅添加查询变量。使用您的 Azure DevOps 数据源作为以下可用查询的数据源
查询类型 | 描述 |
---|---|
项目 | 返回项目 ID 列表。项目 ID 将作为值。项目名称用作显示值 |
仓库 | 返回仓库 ID 列表。仓库 ID 将作为值。仓库名称用作显示值。您可以选择指定项目来过滤仓库,仅显示特定项目下的仓库 |
注意:您无法在变量编辑器中按项目/仓库名称应用 regex。此外,插件不支持多变量。
示例仪表盘
Azure DevOps 插件包含可以从插件配置页面的“仪表盘”标签导入的预制示例仪表盘。这些仪表盘仅用于演示目的,可能无法满足您的所有需求。