跳到主要内容

已保存过滤器数据源

报告的数据来自 Jira 已保存过滤器。您只需添加每个过滤器一次,为它 取一个名称,然后把组件绑定到该名称。

在本版本中,已保存过滤器是唯一的数据源。不支持自由文本 JQL,不支持 REST、SQL 或 CSV 数据源,也不支持第三方连接器。

添加数据源

在报告编辑器中,添加数据源会列出 Jira 向显示的已保存过滤器。 选择一个并为它取一个本地显示名称——“支持待办事项”、 “工程升级事项”——这就是您在设计器的来源选择器中看到的名称。

您也可以直接输入已保存过滤器的数字 ID。如果无法连接 Jira, 选择器会予以说明,而不会阻塞编辑器。

一份报告最多可包含 8 个数据源。名称必须唯一。

Exportelier 存储的是过滤器 id,而不是查询

这是关于报告最需要理解的一点。

当您添加已保存过滤器时,Exportelier 存储的是它的数字 id 和您的显示 名称。仅此而已。它不存储:

  • 过滤器的 JQL —— 它绝不会被读取、复制、记录或拼接;
  • 过滤器的结果 —— 任何地方都不会保留问题的快照。

导出时,Exportelier 构建唯一一个严格为数字的谓词 filter = 12345,并向 Jira 询问此刻的结果。

由此产生三个后果,而且它们都是有意为之的:

  • 报告跟随过滤器。 在 Jira 中编辑该已保存过滤器,下一次 导出就会反映出来。Exportelier 中没有任何需要重新同步的内容。
  • 过滤器在 Jira 中的共享规则自动生效。 Exportelier 绝不会 成为绕过它们的旁路。
  • 不存在会泄露的过期副本。 报告持有的是引用,而不是数据。
更改过滤器会影响使用它的每一份报告

由于引用是实时的,编辑一个被广泛共享的已保存过滤器会改变 绑定到它的每一份报告——包括其他管理员构建的报告。

每次导出都以您的身份运行

Exportelier 以启动导出的人的身份读取 Jira,绝不以应用 身份,也绝不以构建该报告的人的身份。

因此,两个人在同一天导出同一份报告,合理地得到不同的文档是正常的。 每个人看到的恰好是自身 Jira 权限所允许的问题——不多, 也不少。这是正确行为,而不是缺陷: 否则应用就会向用户展示 Jira 本不允许他们看到的数据。

构建报告的站点管理员看到的是他们自己能看到的过滤器。这绝不会 扩大其他任何人得到的内容。

两个数据源,一个过滤器,一次搜索

如果两个数据源指向同一个已保存过滤器,Jira 只会被查询一次, 结果会同时提供给两者。组件实际需要的字段会在整份报告范围内 统一收集并一起请求,而不是获取“全部内容”或按组件分别获取。

因此,您可以用不同的名称两次添加同一个过滤器——用于 不同的组件——而无需付出双倍代价。

预检:导出将会找到什么

在导出开始之前,Exportelier 会检查每个数据源并报告以下之一:

状态含义是否阻断导出?
就绪过滤器已成功读取并匹配到问题。
为空该过滤器当前没有匹配到任何问题。否——空报告也是如实的答案。
不可用该过滤器对您不可用。
受速率限制Jira 正在限流;请稍后重试。暂时性
错误无法检查该过滤器。暂时性

预检还会显示每个数据源的大致问题数量,并在某个数据源 将在每源上限处被截断时发出警告。

为什么“不可用”不说“已删除”

对于已不存在的过滤器以及存在但未与您共享的过滤器,Jira 都返回 404。 通过 API 无法区分这两种情况, 因此 Exportelier 不会猜测。声称一件无法证实的删除会让 用户去排查错误的问题;该提示会指出两种可能性, 并建议请站点管理员共享该过滤器。

不可用的数据源会中止导出

数据源缺失的报告不会被导出。作业会失败并指明该数据源。 这是有意的选择:一份悄然缺少某个数据源的报告 在实质上是错误的,而且与完整报告无法区分。

适用于数据源的限制

  • 每份报告 8 个数据源,且最多 8 次不同的过滤器搜索。
  • 每个数据源 500 个问题,整份报告 2 000 个唯一问题。
  • 同时运行 2 次 Jira 搜索——报告是后台作业,而不是交互式 读取,并共享站点的 Jira 速率预算。

当某项限制导致数据被截断时,完成的文档会按数据源予以说明。参见 限制参考

相关页面