如何访问Sonar指标的结果,以便与PowerPivot等应用程序一起使用

时间:2012-06-06 17:10:32

标签: api sonarqube powerpivot

我正在尝试通过Sonar运行许多具有已知故障率的应用程序,希望决定哪些指标在确定特定应用程序是否会失败时最有价值。最终,我将制作某种算法,该算法将查看我正在使用的任何指标的输出,并生成1到100的分数。我通过Sonar获得了大约21个应用程序,并且结果已存储在一个MySQL数据库。我最初计划使用PowerPivot来查找数据中的关系,但似乎表的格式不适合这一点。关于stackoverflow的其他问题告诉我,Sonar的表格没有格式化,我应该使用Web Service API来获取信息。我不熟悉API,并且通过查看Sonar的API文档尝试做我想做的事情是不成功的。

从另一个问题的答案: http://nemo.sonarsource.org/api/timemachine?resource=org.apache.cxf:cxf&format=csv&metrics=ncloc,violations_density,comment_lines_density,public_documented_api_density,duplicated_lines_density,blocker_violations,critical_violations,major_violations,minor_violations

这看起来与我想要的非常类似,除了我只查看每个应用程序一次(我正在分析网格上所有实时应用程序的示例),这意味着Timemachine不是真的我正在寻找什么。是否可以生成一个类似的表,除了代替每个日期的特定应用程序的统计信息,它显示了应用程序及其所有类的统计信息等?

1 个答案:

答案 0 :(得分:1)

如果您不熟悉WS API,您还可以创建自己的Sonar插件来实现您想要的任何内容:它是用Java编写的,它将在您运行的每个分析中执行。这样,在这个自定义插件的代码中,您可以执行任何操作:在输出文件中刷新所需的指标,将它们推送到第三方系统,等等。

看看how to write a plugin(很可能你会创建一个装饰器)。您还可以concrete examples更快地开始使用。