如何微调SonarQube Gradle插件的级别

Mar*_*sic 5 gradle jenkins sonarqube gradle-plugin log-level

我正在将SonarQube插件(版本2.6.1)用于Gradle(版本4.7),并且遇到的问题是,在我的CI服务器上运行声纳分析时,正在编写许多不重要的日志输出。

有没有一种方法可以微调此插件的日志级别

我检查了文档,但是与找到的日志输出相关的唯一设置是JVM参数“ verbose”,我没有使用任何一种方法(我猜默认设置是,false所以不应该为我打开它)。

编辑:这是一些我想摆脱的输出示例:

  1. 在findbugs分析期间有一些巨大的异常堆栈跟踪(这一段被缩短了,不想发布整个堆栈跟踪,这确实很大)。
16:23:34.993 ERROR - Unable to create symbol table for : /opt/workspace/pipeline-1/src/main/java/com/SomeClass.java
java.lang.NullPointerException: null
    at org.sonar.java.resolve.TypeAndReferenceSolver.getSymbolOfMemberSelectExpression(TypeAndReferenceSolver.java:232) ~[java-squid-2.5.1.jar:na]
    at org.sonar.java.resolve.TypeAndReferenceSolver.resolveAs(TypeAndReferenceSolver.java:200) ~[java-squid-2.5.1.jar:na]
    at org.sonar.java.resolve.TypeAndReferenceSolver.resolveAs(TypeAndReferenceSolver.java:182) ~[java-squid-2.5.1.jar:na]
    at...
Run Code Online (Sandbox Code Playgroud)
  1. 来自PMD的堆栈跟踪:
16:23:37.206 ERROR - Fail to execute PMD. Following file is ignored: /opt/workspace/pipeline-1/src/main/java/com/SomeClass.java
java.lang.RuntimeException: null
    at org.objectweb.asm.MethodVisitor.visitParameter(Unknown Source) ~[asm-5.0.3.jar:5.0.3]
    at org.objectweb.asm.ClassReader.b(Unknown Source) ~[asm-5.0.3.jar:5.0.3]
    at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-5.0.3.jar:5.0.3]
    at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-5.0.3.jar:5.0.3]
    at net.sourceforge.pmd.lang.java.typeresolution.PMDASMClassLoader.getImportedClasses(PMDASMClassLoader.java:77) ~[pmd-java-5.2.1.jar:na]...
Run Code Online (Sandbox Code Playgroud)
  1. 许多不相关的警告如下:
16:23:38.638 WARN  - /opt/workspace/pipeline-1/src/main/java/com/SomeClass.java: Got an exception - expecting EOF, found '}'
/opt/workspace/pipeline-1/src/main/java/com/SomeClass.java:28:5: expecting RCURLY, found 'default'
16:23:38.655 WARN  - /opt/workspace/pipeline-1/src/main/java/com/SomeClass.java: Got an exception - expecting EOF, found 'someVariable'
Run Code Online (Sandbox Code Playgroud)

我不知道到底是什么引起了这些问题,但是由于我的应用程序和声纳分析的结果都还不错,所以我想摆脱那些日志输出,因为它们只会污染我在Jenkins上的日志并使它们不可读。

Mar*_*ler 0

有财产sonar.log.levelsonar.verbose;例如:

allprojects {
    sonarqube {
        properties {
            // property "sonar.log.level", "INFO"
            property "sonar.log.level", "TRACE"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

参见分析参数