You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ReportPortal是否有API用于创建/编辑仪表盘及部件以实现自动化?

ReportPortal 仪表盘批量创建的自动化方案

ReportPortal 完全支持通过 REST API 实现仪表盘的批量自动化创建,不用再手动重复操作相似配置的仪表盘。以下是具体实现思路和可行方案:

核心实现方式:利用 REST API 批量生成

ReportPortal 的 REST API 包含完整的仪表盘管理端点,只是官网文档可能未重点提及。具体步骤如下:

  1. 创建模板仪表盘:先通过 UI 配置好一个符合需求的基础仪表盘(设置好所有通用组件,只保留需要修改的过滤值未配置)。
  2. 导出模板配置:调用 GET /{projectName}/dashboard/{dashboardId} 接口,获取该模板仪表盘的完整 JSON 配置。
  3. 批量修改配置:复制模板配置,针对每个目标配置值,修改仪表盘名称和对应的过滤参数(比如环境标签、测试配置项等)。
  4. 调用创建接口:循环调用 POST /{projectName}/dashboard 接口,将修改后的 JSON 作为请求体发送,即可批量生成仪表盘。

认证说明

所有 API 请求需要在请求头中携带认证 Token:

Authorization: Bearer {你的API Token}

Token 可在 ReportPortal 个人设置的「API Keys」选项中生成。

简单脚本示例(Python)

import requests

# 替换为你的实例信息
BASE_URL = "https://your-reportportal-domain/api/v1"
API_TOKEN = "your-generated-api-token"
PROJECT_NAME = "your-target-project"
# 替换为你创建的模板仪表盘ID
TEMPLATE_DASH_ID = "template-dashboard-id"
# 需要批量生成的配置值列表
TARGET_CONFIGS = ["Config-1", "Config-2", "Config-3"]

headers = {
    "Authorization": f"Bearer {API_TOKEN}",
    "Content-Type": "application/json"
}

# 获取模板仪表盘配置
template_res = requests.get(f"{BASE_URL}/{PROJECT_NAME}/dashboard/{TEMPLATE_DASH_ID}", headers=headers)
template_config = template_res.json()

for config in TARGET_CONFIGS:
    # 复制模板并修改关键参数
    new_dash = template_config.copy()
    new_dash["name"] = f"测试仪表盘 - {config}"
    # 根据实际配置结构修改过滤条件,这里仅为示例
    for widget in new_dash["widgets"]:
        if "filter" in widget:
            # 替换目标过滤字段的值
            for condition in widget["filter"]["conditions"]:
                if condition["filter_field"] == "test_config":
                    condition["filter_value"] = config
    # 创建新仪表盘
    create_res = requests.post(f"{BASE_URL}/{PROJECT_NAME}/dashboard", json=new_dash, headers=headers)
    if create_res.status_code == 201:
        print(f"成功创建仪表盘:{config}")
    else:
        print(f"创建失败 [{config}]:{create_res.text}")

其他可行方案

  • 模板复用:如果你的 ReportPortal 版本支持「共享仪表盘模板」,可以先保存模板,再基于模板快速创建新仪表盘时仅修改过滤值,适合少量配置的场景。
  • 社区参考:你可以在项目的 GitHub Issues 或讨论区搜索「dashboard automation」,能找到其他开发者分享的自动化脚本案例。

官方规划

目前 REST API 已经覆盖仪表盘的全生命周期管理,官方后续会持续完善 API 文档和功能覆盖,你可以关注项目仓库的更新日志或提交需求反馈。

内容的提问来源于stack exchange,提问作者John Y.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 10:55:20