Jira——如何通过 REST API 获取问题变更日志——但不是单一问题

用户45867

我已经多次看到这个问题,但没有足够的答案。

我们正在尝试将所有 JIRA 数据转储到我们的数据仓库/BI 系统中。或者至少,有趣的部分。

您可以做的一件事是直接使用现场持续时间跟踪状态时间、周期时间、提前期。这通过 JIRA 的直接 SQL 数据库非常容易。表changeItem 和changeGroup。

当然,REST JSON API 对数据库的性能影响较小。

但是......在获取所有问题更改历史记录的其余 API 中似乎没有等效项。是的,您可以通过 API 调用直接获取一个问题的变更日志。如果您有 10 万个问题,您是否希望进行 10 万次 API 调用,遍历问题 ID?听起来很疯狂。

是否可以通过搜索 API 以某种方式扩展更改日志,该 API 会收集所有问题数据?我没见过。我在这里寻求的可能吗?还是我们必须坚持 SQL 路线?

原汁原味的

我认为您问的问题与以前几乎相同:如何获取(通过 GET)所有 JIRA 问题?我去搜索节点吗?,但在获取变更日志数据方面也很有趣。

是的,您必须再次批量操作,多次请求 JIRA API。这是一个小 bash 脚本,它可以帮助您做到这一点:

#!/usr/bin/env bash

LDAP_USERNAME='<username>'
LDAP_PASSWORD='<password>'

JIRA_URL='https://jira.example.com/rest/api/2/search?'
JQL_QUERY='project=FOOBAR'

START_AT=0
MAX_RESULTS=50

TOTAL=$(curl --silent -u "${LDAP_USERNAME}:${LDAP_PASSWORD}" -X GET -H "Content-Type: application/json" "${JIRA_URL}maxResults=0&jql=${JQL_QUERY}" | jq '.total')
echo "Query would export ${TOTAL} issues."


while [ ${START_AT} -lt ${TOTAL} ]; do
    echo "Exporting from ${START_AT} to $((START_AT + MAX_RESULTS))"
    curl --silent -u "${LDAP_USERNAME}:${LDAP_PASSWORD}" -X GET -H "Content-Type: application/json" "${JIRA_URL}maxResults=${MAX_RESULTS}&startAt=${START_AT}&jql=${JQL_QUERY}& expand=changelog" | jq  -c '.issues[]' >> issues.json

    START_AT=$((START_AT + MAX_RESULTS))
done

请注意expand参数,该参数还将所有更改日志也放入 json 转储。或者,您可以使用issue dumper python 解决方案:实现回调以将数据存储到 db,您就完成了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过REST API查找JIRA问题的状态?

来自分类Dev

如何通过REST API向JIRA创建问题?

来自分类Dev

如何通过 REST API 获取 JIRA 问题的描述、受让人名称?

来自分类Dev

如何通过 jira rest api 从特定的未发布版本中获取所有问题

来自分类Dev

通过 PowerShell 使用 REST API 创建 JIRA 问题

来自分类Dev

如何通过JIRA REST API查询日期范围?

来自分类Dev

如何通过JIRA REST API设置“影响版本”字段-PHP

来自分类Dev

如何使用.net中的jira rest api获取项目特定的jira问题?

来自分类Dev

通过JIRA REST API从自定义字段获取值

来自分类Dev

JIRA REST API-如何查询问题状态名称

来自分类Dev

使用JIRA REST API创建JIRA问题时如何附加图像

来自分类Dev

如何使用JIRA REST API获取为当前用户分配给当前冲刺的JIRA Agile问题?

来自分类Dev

JIRA REST API获取工作日志-“您无权查看指定的问题”

来自分类Dev

无法使用REST API更新jira问题

来自分类Dev

如何使用REST API与未分配的受让人一起创建JIRA问题

来自分类Dev

通过REST API向JIRA问题添加多个观察者

来自分类Dev

通过REST API在选项卡式屏幕上创建JIRA问题-PHP

来自分类Dev

如何通过REST API在JIRA中发送身份验证cookie WebRequest并接收响应?

来自分类Dev

如何通过REST API向JIRA发送POST请求以创建项目

来自分类Dev

如何通过REST API更新JIRA中的自定义字段?

来自分类Dev

如何解决python3访问JIRA-REST API的证书问题?

来自分类Dev

如何通过Jira REST Java Client获得项目的所有问题?

来自分类Dev

从REST API获取Jira Issue的分支

来自分类Dev

获取最新票的 Jira Rest Api

来自分类Dev

SonarQube,通过REST API创建问题

来自分类Dev

Jira V6.0 +通过REST API创建项目

来自分类Dev

使用Powershell从JIRA Rest API解析问题密钥

来自分类Dev

Jira REST API 在创建问题时返回错误

来自分类Dev

如何使用JIRA -REST-API for python访问下一页

Related 相关文章

  1. 1

    如何通过REST API查找JIRA问题的状态?

  2. 2

    如何通过REST API向JIRA创建问题?

  3. 3

    如何通过 REST API 获取 JIRA 问题的描述、受让人名称?

  4. 4

    如何通过 jira rest api 从特定的未发布版本中获取所有问题

  5. 5

    通过 PowerShell 使用 REST API 创建 JIRA 问题

  6. 6

    如何通过JIRA REST API查询日期范围?

  7. 7

    如何通过JIRA REST API设置“影响版本”字段-PHP

  8. 8

    如何使用.net中的jira rest api获取项目特定的jira问题?

  9. 9

    通过JIRA REST API从自定义字段获取值

  10. 10

    JIRA REST API-如何查询问题状态名称

  11. 11

    使用JIRA REST API创建JIRA问题时如何附加图像

  12. 12

    如何使用JIRA REST API获取为当前用户分配给当前冲刺的JIRA Agile问题?

  13. 13

    JIRA REST API获取工作日志-“您无权查看指定的问题”

  14. 14

    无法使用REST API更新jira问题

  15. 15

    如何使用REST API与未分配的受让人一起创建JIRA问题

  16. 16

    通过REST API向JIRA问题添加多个观察者

  17. 17

    通过REST API在选项卡式屏幕上创建JIRA问题-PHP

  18. 18

    如何通过REST API在JIRA中发送身份验证cookie WebRequest并接收响应?

  19. 19

    如何通过REST API向JIRA发送POST请求以创建项目

  20. 20

    如何通过REST API更新JIRA中的自定义字段?

  21. 21

    如何解决python3访问JIRA-REST API的证书问题?

  22. 22

    如何通过Jira REST Java Client获得项目的所有问题?

  23. 23

    从REST API获取Jira Issue的分支

  24. 24

    获取最新票的 Jira Rest Api

  25. 25

    SonarQube,通过REST API创建问题

  26. 26

    Jira V6.0 +通过REST API创建项目

  27. 27

    使用Powershell从JIRA Rest API解析问题密钥

  28. 28

    Jira REST API 在创建问题时返回错误

  29. 29

    如何使用JIRA -REST-API for python访问下一页

热门标签

归档