【发布时间】:2018-04-15 00:19:19
【问题描述】:
我想知道如何根据给定项目的规则通过 REST API 获取声纳中的问题计数。
谢谢, 阿拉文
【问题讨论】:
标签: sonarqube devops sonarqube6.3
我想知道如何根据给定项目的规则通过 REST API 获取声纳中的问题计数。
谢谢, 阿拉文
【问题讨论】:
标签: sonarqube devops sonarqube6.3
可以回答此类查询的 REST API 端点是 api/issues/search。
例如,给定一个项目的$KEY,您可以使用curl 和jq 工具找到问题的数量,如下所示:
curl "yourserver/api/issues/search?componentKeys=$KEY&ps=1" | jq .total
即:
componentKeys参数中设置项目密钥ps=1来最小化输出这将返回一个问题,感谢ps=1,
但在 JSON 响应中,您应该会看到 total 字段,其中包含问题总数。
jq 工具将为您提供单个数字的干净输出,如果您没有它,您可以简单地获取响应的head,该值应该在顶部附近很容易看到,例如:
$ curl "yourserver/api/issues/search?componentKeys=$KEY&ps=1" | jq .total
{
"total": 12,
"p": 1,
"ps": 1,
"paging": {
"pageIndex": 1,
"pageSize": 1,
"total": 12
},
"issues": [
(在此示例中,项目中有 12 个问题。)
【讨论】:
在 SonarQube UI 的每个页面的页脚中,您都会找到指向您的版本的 API 文档的链接。查看issues/search,您可以通过componentKeys(项目ID)对其进行限定。在响应 JSON 中(您可以在板载文档中查看示例)查看 paging.total
【讨论】: