【问题标题】:How to use a union operator in SonarQube web services?如何在 SonarQube Web 服务中使用联合运算符?
【发布时间】:2017-07-18 09:08:34
【问题描述】:

我想从我遇到的所有问题中选择所有阻塞问题和所有漏洞问题,它们是 Blocker、Critical 或 Major。 如何在 SonarQube 6.4 的一个请求中做到这一点? 如果我这样做了

http://localhost:9000/api/issues/search
severities=BLOCKER,CRITICAL,MAJOR&type=vulnerability&additionalFields=comments

我只会遇到漏洞问题。

如果我执行两个请求,一个针对阻止程序问题,一个针对漏洞,我将拥有多余的阻止漏洞。

【问题讨论】:

    标签: sonarqube sonarqube-api


    【解决方案1】:

    api/issues/search 不允许组合过滤器。它会将所有条件“与”在一起。

    我假设您问的是如何查询这些问题:

               CODE_SMELL | BUG | VULNERABILITY
    BLOCKER  | YES        | YES | YES
    CRITICAL | no         | no  | YES
    MAJOR    | no         | no  | YES
    MINOR    | no         | no  | YES
    INFO     | no         | no  | YES
    

    所以我建议:

    (用于获取CODE_SMELL和BUG的所有BLOCKER问题)

               CODE_SMELL | BUG | VULNERABILITY
    BLOCKER  | YES        | YES | no
    CRITICAL | no         | no  | no 
    MAJOR    | no         | no  | no 
    MINOR    | no         | no  | no
    INFO     | no         | no  | no
    

    (用于获取所有漏洞问题)

               CODE_SMELL | BUG | VULNERABILITY
    BLOCKER  | no         | no  | YES
    CRITICAL | no         | no  | YES
    MAJOR    | no         | no  | YES
    MINOR    | no         | no  | YES
    INFO     | no         | no  | YES
    

    所以你不会有重复的问题,但必须做两个请求。

    【讨论】:

    • 我认为他正在寻找this。您的逻辑仍然有效,只需对两个查询进行细微调整
    • 完美!非常感谢,这正是我所需要的,尽管我认为在一个请求中组合是可能的。 Ps @janos,这是一个她:p
    【解决方案2】:

    问题分为三类

    • 错误
    • CODE_SMELL
    • 漏洞

    所有这些问题类型都可以设置任何严重性。因此,如果您想要 Blocker、Critical 和 Major 严重性的所有问题(任何类型),您的请求中应该有此参数。

    severities=BLOCKER,CRITICAL,MAJOR&types=CODE_SMELL,BUG,VULNERABILITY&additionalFields=cmets

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-24
      • 2011-05-07
      • 2013-03-17
      • 2016-04-23
      • 2020-01-05
      • 1970-01-01
      • 2018-06-08
      • 1970-01-01
      相关资源
      最近更新 更多