无法在Sonar中显示自定义指标值

时间:2012-08-22 13:07:22

标签: java rest sonarqube

我在Sonar中有一个名为XMetObj的自定义度量,名为“Complexity”。我已将“自定义度量”添加到项目中。 现在,在尝试通过java RESTful客户端访问它时,应用程序无法检测到此度量。

    Sonar sonar = Sonar.create("http://localhost:9000", "admin", "admin");
    String prjKey = "sampletest:junit";
    Query<Resource> resourceQuery = ResourceQuery.createForMetrics(prjKey, "Custom Measures", "Complexity", "XMetObj");
    if(resourceQuery==null){
        return;
    }
    Resource metrics = sonar.find(resourceQuery);
    if(metrics==null){
        return;
    }
    List<Measure> measures = metrics.getMeasures();
    for(Measure m:measures){
        m.setData("metrics");
        System.out.println(m.getData());
    }

我能够获得某些项目的指标,但是度量列表仍然是空的。 我也在尝试将新数据插入此自定义指标中,但这也是失败的。 这是显示指标的正确方法吗?我没有使用插件,因为度量值已经存储在数据库中,我希望这些值是项目特定的,但是包含来自外部数据源的内容。

1 个答案:

答案 0 :(得分:1)

如果要检索指标的度量,则必须使用度量标准密钥,而不是度量标准名称:

ResourceQuery.createForMetrics(String resourceKeyOrId, String... metricKeys)

为了得到你的衡量标准,你必须做一些事情:

ResourceQuery.createForMetrics(prjKey, "your_metric_key")