有没有办法通过webservice api获取项目中违规最多的规则,大多数违规文件和圈复杂度?
我尝试了下面的网址
http://localhost:9000/api/resources?resource=xyz&metrics=rules_violations&limit=5&filter_rules=false&filter_rules_cats=true&limit=5&format=xml
但它似乎不起作用,如果你们中的任何人都知道它,请告诉我
答案 0 :(得分:0)
根据您提供的网址,您似乎错过了sonarqube项目的ProjectKey的第一部分。这是您在分析的代码库的根目录下的sonar-project.properties文件中提供的值。
# This is an excerpt your sonar-project.properties file.
# Notice the 'something' in the line below
sonar.projectKey=something.xyz
sonar.projectName=xyz
sonar.projectVersion=1.2.3
将projectKey值复制到api调用中,如下所示。 请注意以下网址中资源查询参数的冒号。
http://localhost:9000/api/resources?resource=something:xyz?metrics=complexity
用于获取资源级别信息的API已记录在案here,并且您可以传递给API的这一部分的指标已记录为here。
如果您使用的是文件级指标,例如大多数违规文件,那么最相关的查询参数将是
&scopes=FIL&depth=-1
这指定您希望递归通过项目的文件级指标。例如,您可以在返回结果时过滤结果,以查找违规次数最多的文件。