Gradle 使用slf4j和log4j2进行梯度测井
我面临的问题是,在Jenkins管道作业的控制台输出中,由log4j2语句支持的slf4j不可见。管道代码在Groovy中。详情见附件 我快速浏览了以下内容: 您还可以从其他服务器连接到Gradle的日志系统 构建中使用的类(来自buildSrc目录的类 示例)。只需使用SLF4J记录器即可。您也可以使用此记录器 在构建脚本中使用提供的记录器的方式 例4。使用SLF4J写入日志消息Gradle 使用slf4j和log4j2进行梯度测井,gradle,logging,jenkins-pipeline,Gradle,Logging,Jenkins Pipeline,我面临的问题是,在Jenkins管道作业的控制台输出中,由log4j2语句支持的slf4j不可见。管道代码在Groovy中。详情见附件 我快速浏览了以下内容: 您还可以从其他服务器连接到Gradle的日志系统 构建中使用的类(来自buildSrc目录的类 示例)。只需使用SLF4J记录器即可。您也可以使用此记录器 在构建脚本中使用提供的记录器的方式 例4。使用SLF4J写入日志消息 import org.slf4j.LoggerFactory def slf4jLogger = LoggerF
import org.slf4j.LoggerFactory
def slf4jLogger = LoggerFactory.getLogger('some-logger')
slf4jLogger.info('An info log message logged using SLF4j')
Gradle还提供了与Jakarta的javautil日志的集成
Commons日志记录和Log4j日志记录工具包。任何日志消息
使用这些日志记录工具包编写的构建类将
已重定向到Gradle的日志系统
我不确定我是否理解上述引文。我的问题是:
1.简单地说,这是否意味着您不能绕过Gradle日志记录?
2.下面的代码是否仍将调用日志级别不同于slf4j/log4j2的Gradle日志系统?在这里,我尝试使用由log4j2支持的slf4j,甚至不知道Gradle日志(类似于Gradle日志中的示例4)
部分构建.gradle
.
.
.
dependencies {
compile gradleApi()
compile localGroovy()
compile "org.apache.commons:commons-collections4:4.0"
compile "org.ajoberstar:grgit:1.9.3"
compile "org.ajoberstar:gradle-git:1.7.2"
compile "com.github.zafarkhaja:java-semver:0.9.0"
compile "de.gliderpilot.gradle.semantic-release:gradle-semantic-release-plugin:1.4.0"
compile "com.netflix.nebula:nebula-dependency-recommender:5.2.0"
compile "org.jfrog.buildinfo:build-info-extractor-gradle:4.4.12"
compile "tools.swedbank.gradle.plugin:qualityreport:v1.12.9"
compile "tools.swedbank.gradle.plugin:gradle-tde:v1.24.2"
//slf4j
compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.9'
//log4j2
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.11.1'
compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.11.1'
//Start: Binding slf4j to an implementation, exactly one should be uncommented at a time
//Use log4j2
compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.11.1'
//Use logback
//compile group: 'ch.qos.logback', name:'logback-classic', version: '1.2.3'
//compile group: 'ch.qos.logback', name:'logback-core', version: '1.2.3'
testCompile('org.spockframework:spock-core:1.1-groovy-2.4') {
exclude group: 'org.codehaus.groovy'
}
testCompile gradleTestKit()
}
configurations.all
{
resolutionStrategy
{
force 'org.codehaus.groovy:groovy-all:2.4.12'
}
}
3.即使我只希望使用slf4j+log4j2组合,我是否需要在gradle.properties中配置某些内容
status = error
name = PropertiesConfig
filters = threshold
filter.threshold.type = ThresholdFilter
filter.threshold.level = debug
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c:- %m%n
loggers = console
logger.console.name = ConsoleLog
logger.console.level = debug
logger.console.additivity = false
logger.console.appenderRef.console.ref = STDOUT
rootLogger.level = info
rootLogger.appenderRef.stdout.ref = STDOUT
.
.
.
dependencies {
compile gradleApi()
compile localGroovy()
compile "org.apache.commons:commons-collections4:4.0"
compile "org.ajoberstar:grgit:1.9.3"
compile "org.ajoberstar:gradle-git:1.7.2"
compile "com.github.zafarkhaja:java-semver:0.9.0"
compile "de.gliderpilot.gradle.semantic-release:gradle-semantic-release-plugin:1.4.0"
compile "com.netflix.nebula:nebula-dependency-recommender:5.2.0"
compile "org.jfrog.buildinfo:build-info-extractor-gradle:4.4.12"
compile "tools.swedbank.gradle.plugin:qualityreport:v1.12.9"
compile "tools.swedbank.gradle.plugin:gradle-tde:v1.24.2"
//slf4j
compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.9'
//log4j2
compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.11.1'
compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.11.1'
//Start: Binding slf4j to an implementation, exactly one should be uncommented at a time
//Use log4j2
compile group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.11.1'
//Use logback
//compile group: 'ch.qos.logback', name:'logback-classic', version: '1.2.3'
//compile group: 'ch.qos.logback', name:'logback-core', version: '1.2.3'
testCompile('org.spockframework:spock-core:1.1-groovy-2.4') {
exclude group: 'org.codehaus.groovy'
}
testCompile gradleTestKit()
}
configurations.all
{
resolutionStrategy
{
force 'org.codehaus.groovy:groovy-all:2.4.12'
}
}