【问题标题】:Unable to find all issues through SonarQube WS API无法通过 SonarQube WS API 找到所有问题
【发布时间】:2016-09-19 19:16:19
【问题描述】:

目标:将项目的所有 SonarQube 问题导出为 JSON/CSV。

方法一:挖掘声纳mysql数据库

方法 2:使用 SonarQube WS API

首先我有动力选择方法 1,但在与 SonarQube 核心开发人员社区讨论后,我的印象是在任何情况下都不要接触数据库。

因此,我继续使用方法 2 并开发脚本来解决问题。但是,后来我发现通过 WS-API,我可以解决多达 10000 个不符合我目标的问题。

现在我确信方法 1 即挖掘数据库最适合我。查看声纳数据库中的“issues”表时,我有以下问题。

问题。 “位置”字段的格式/编码是什么,如何从 python/java 解码它?

【问题讨论】:

  • 为什么需要导出项目的所有 SonarQube 问题?你的用例是什么?
  • 我正在使用数据进行研究,所以我从一开始就需要一切。

标签: mysql sonarqube


【解决方案1】:

完全不建议从数据库中提取数据。架构和内容经常变化。每次升级都可能会中断您的 SQL 请求。此外,它包含无法按原样解析的二进制数据(发布位置)。

获取数据的唯一方法是通过 Web 服务。如果 api/issues/search 面临您认为关键的限制,那么您应该向 SonarQube google 小组解释您的功能需求。

【讨论】:

  • 我需要单次拍摄的数据,因此未来的兼容性对我来说不是问题。如果您知道,请您回答 Q1。我假设 SonarQube 问题/搜索 WS API 的开源部分已经完成了“位置”解码。你能指点我这段代码吗?
  • 它是协议缓冲区。我只能给你github.com/SonarSource/sonarqube/blob/master/sonar-db/src/main/…的链接,但我不能支持你更深入的了解。
猜你喜欢
  • 1970-01-01
  • 2019-10-22
  • 2020-04-03
  • 1970-01-01
  • 2017-04-20
  • 2015-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多