Sonar 3.6.1:手动指标和树形图组件

时间:2013-06-30 08:30:05

标签: sonarqube

我对SonarQube 3.5.1 / 3.6 / 3.6.1有疑问。

我使用Web API为项目注入手动指标值,如下所示: curl -u user:password -d "resource=<project>&metric=<key of metric>&val=<value>" http://localhost:8081/sonar/api/manual_measures 更重要的是,我使用sonar-runner(带有.properties文件)在注入这些值后运行分析。

其中一个指标是百分比,此指标在声纳中声明为百分比单位值(在Settings =&gt; Manual Metrics菜单中)。 我有一个包含组件的项目,每个项目和组件都注入了这个度量值,我可以在Sonar中看到它。

当我想在“树形图组件”小部件中将此指标显示为颜色指标时,所有树形图都是灰色的(就像未定义值一样)。

但是如果我将鼠标放在树形图中的组件名称上,我会将颜色度量值看作百分比值,如下所示:     myComponent - ncloc:800 - myMetric:84,0%

此外,缩放度量标准颜色不会出现在树形图标题中(Size ncloc Color <my metric>之后)。

如果我选择其他颜色指标(不是手动指标),则会显示颜色和比例。

2 个答案:

答案 0 :(得分:0)

事实上,提供手动指标是两步法:

  • 通过调用“manual_measures”Web服务
  • 来定义此手动指标的值
  • 对此项目启动声纳分析,以将此手动测量“关联”到此项目的最新质量快照

然后,您应该能够在树形图中使用此手动指标。

答案 1 :(得分:0)

我终于找到了解决这个问题的方法。

在数据库的metrics表中,我意识到我的color treemap的手册指标没有worst_value和best_value(值为NULL)。

select * from metrics where name like 'sp_violations_density';

结果:

+-----+-----------------------+------------------+-----------+--------+-------------------------------+-------------+----------+--------------+---------+--------+------------------------+--------------------------+----------------------+--------+------------------------+
| id  | name                  | description      | direction | domain | short_name                    | qualitative | val_type | user_managed | enabled | origin | worst_value            | best_value               | optimized_best_value | hidden | delete_historical_data |
+-----+-----------------------+------------------+-----------+--------+-------------------------------+-------------+----------+--------------+---------+--------+------------------------+--------------------------+----------------------+--------+------------------------+
| 161 | sp_violations_density | Rules compliance |         0 | Issues | SyncPerl Compliance Rules (%) |           1 | PERCENT  |            1 |       1 | GUI    |                   NULL |                     NULL |                 NULL |   NULL |                   NULL |
+-----+-----------------------+------------------+-----------+--------+-------------------------------+-------------+----------+--------------+---------+--------+------------------------+--------------------------+----------------------+--------+------------------------+

所以我用0和100设置它们。

update metrics set worst_value='0' where name LIKE 'sp_violations_density';
update metrics set best_value='100' where name LIKE 'sp_violations_density';

需要重启Tomcat,然后才能运行。

Treemap现在有了颜色。