从SonarQube和SCM-Activity插件中检索Decrypted Blame信息

时间:2013-10-11 16:13:53

标签: ruby-on-rails ruby encryption sonarqube blame

我正在尝试为SonarQube编写一个插件,该插件使用SCM-Activity插件提供的blame信息。问题是,在Sonar的数据库中,指责信息似乎缺失加密

例如,我在MySQL Workbench中对Sonar的数据库运行了以下查询:

SELECT p.kee, m.name, pm.text_value
FROM sonar.project_measures pm
JOIN sonar.snapshots s on pm.snapshot_id = s.id
JOIN sonar.metrics m on m.id = pm.metric_id
JOIN sonar.projects p on s.project_id = p.id
WHERE s.root_project_id = 1 and m.domain = 'SCM';

以下是结果示例:

SCM Query

如您所见,有四个指标与SonarQube的SCM-Activity插件有关:

  • authors_by_line
  • revisions_by_line
  • last_commit_datetimes_by_line
  • scm.hash

所以,这是我的问题:

  1. 为什么scm.hash是唯一一个在text_value列中有任何值的指标, 而其他指标不是 ? (我尝试了project_measures表中的其他列,但它们似乎都没有任何值。)
  2. 如何从scm.hash指标中获取有用的 解密 信息?我可以在前端使用某个ruby方法来获取它吗? (我想必须有,或者当我在线上钻取时,SonarQube如何显示责备信息?)
  3. 如果有Ruby方法允许检索和 解密 的责备信息,它们必须位于SonarQube的源代码本身,因为SCM-Activity Plugin源代码似乎没有任何Ruby。如果我是对的,那么 在SonarQube的源代码中,这些Ruby方法位于 ?我一直无法找到它们。

1 个答案:

答案 0 :(得分:3)

您在“text_value”中看到NULL值,因为这些指标需要存储的不仅仅是简单的文本行。因此,您必须加入表“MEASURE_DATA”才能获得这些度量的值。