使用 Rest API 和 SonarQube 的 Timemachine 检索项目指标
Retrieving Project Metrics using Rest API and Timemachine from SonarQube
我正在尝试使用 REST Api 检索项目指标。因此,我首先使用 "/api/projects/index" 查询项目。之后,我使用 "/api/metrics/search" 检索指标。两者都很好。结果是:
- [id:35476, k:com.test:TestProject, nm:TestProject, qu:TRK, sc:PRJ]
- [自定义:false, description:Cyclomatic 复杂度, 方向:-1, domain:Complexity, hidden:false, id:10019, key:complexity, name:Complexity, qualitative:false, type:INT]
现在我想检索项目指标。因此我使用以下 URL:
https://MYHOST/sonarqube/api/timemachine/index?resource=35476&metric=10019&fromDateTime=2010-12-25T23:59:59+0100&toDateTime=2018-12-25T23:59:59+0100
服务器只返回:[{"cols":[],"cells":[]}]
这让我很惊讶,因为当我进入项目的sonar WebInterface时,我可以看到数字。我尝试了一些其他指标,但都以相同的结果结束。我做错了什么?
你没有提到服务器版本,所以我假设是最新的:5.2。
对于裸查询 (http://nemo.sonarqube.org/api/timemachine/index
) 和指定资源但未指定指标的查询 (http://nemo.sonarqube.org/api/timemachine/index?resource=org.sonarsource.sonarqube%3Asonarqube
),我得到了相同的结果。
所以我猜您的资源或指标 ID 有问题。尝试改用键(com.test&%3ATestProject 和复杂性)。
是的,您从其他 Web 服务 返回的 ID 应该 在这里工作,但是 "id" 的意思可能有点......啊。 .. 从服务到服务到服务的变量。
我正在尝试使用 REST Api 检索项目指标。因此,我首先使用 "/api/projects/index" 查询项目。之后,我使用 "/api/metrics/search" 检索指标。两者都很好。结果是:
- [id:35476, k:com.test:TestProject, nm:TestProject, qu:TRK, sc:PRJ]
- [自定义:false, description:Cyclomatic 复杂度, 方向:-1, domain:Complexity, hidden:false, id:10019, key:complexity, name:Complexity, qualitative:false, type:INT]
现在我想检索项目指标。因此我使用以下 URL: https://MYHOST/sonarqube/api/timemachine/index?resource=35476&metric=10019&fromDateTime=2010-12-25T23:59:59+0100&toDateTime=2018-12-25T23:59:59+0100
服务器只返回:[{"cols":[],"cells":[]}]
这让我很惊讶,因为当我进入项目的sonar WebInterface时,我可以看到数字。我尝试了一些其他指标,但都以相同的结果结束。我做错了什么?
你没有提到服务器版本,所以我假设是最新的:5.2。
对于裸查询 (http://nemo.sonarqube.org/api/timemachine/index
) 和指定资源但未指定指标的查询 (http://nemo.sonarqube.org/api/timemachine/index?resource=org.sonarsource.sonarqube%3Asonarqube
),我得到了相同的结果。
所以我猜您的资源或指标 ID 有问题。尝试改用键(com.test&%3ATestProject 和复杂性)。
是的,您从其他 Web 服务 返回的 ID 应该 在这里工作,但是 "id" 的意思可能有点......啊。 .. 从服务到服务到服务的变量。