下面一些Groovy类中的方法由其他我不知道的其他管道脚本类调用。 所有的println语句已被logger.info取代。
class ConfigurationPluginInitBase implements Plugin<Project> { private static final Logger logger = LoggerFactory.getLogger(ConfigurationPluginInitBase.class) . . . protected void configureDependenciesResolution(Project project) { . . . logger.info("Configuring Dependencies Resolution") logger.info('Does the buildInfo.json exist? {}' , file.exists()) logger.info('The list of dependencies should be rewritten: {}' ,rewriteDependency) /*Added this as there was no other way to see what happened to the logger instance*/ println 'Is the logger instance created at all???' + logger . . . logger.info('List: {}' , listToUpdate) } }
log4j2-test.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
Jenkins作业控制台上的输出(下面仅显示相关部分):
. . . . Download http://artifactory.net:8081/artifactory/Migration_R148_VR/tools.gradle.plugin/BuildPublishReleasePlugin/v4.0.0.37af2ff/ivy-v4.0.0.37af2ff.xml Download http://artifactory.net:8081/artifactory/Migration_R148_VR/tools.gradle.plugin/BuildPublishReleasePlugin/v4.0.0.37af2ff/BuildPublishReleasePlugin-v4.0.0.37af2ff.jar //Printed way before the actual logger statements, when the above artifact is //downloaded from Artifactory for further testing in the pipeline Is the logger instance created at all???org.gradle.internal.logging.slf4j.OutputEventListenerBackedLogger@efbec93c apache-commons:commons-collections:null apache-commons:commons-lang:null DAP_Framework:DAP_FrameworkExt:null esapi:esapi:null opensaml:opensaml:null openws:openws:null slf4j:slf4j:null spring-framework:spring-framework:null TDE_Ark_Framework:TDE_Ark_Framework:null TDE_Ark_Infrastructure:TDE_Ark_Infrastructure_CLI:null velocity:velocity:null wurfl:wurfl:null xmlsec:xmlsec:null xmltooling:xmltooling:null. . . . [Ripple AlfaClient] Configuring Dependencies Resolution [Ripple AlfaClient] Does the buildInfo.json exist? true [Ripple AlfaClient] The list of dependencies should be rewritten: DAP_Framework:DAP_Framework_CLI:1.2.2-integration.adcb14d [Ripple AlfaClient] List: [DAP_Framework:DAP_Framework_CLI:1.2.2-integration.adcb14d] . . .
我所指的摇篮登录页面和线程像和这个 ,但我不清楚的根本原因。
注意:我是Jenkins管道,Gradle和Groovy的新手:)
我假设您想将Gradle的日志记录系统用于Gradle插件的日志输出?
在那种情况下,我建议以不同的方式创建/获取记录器实例。使用project.logger.info(…)或创建一个新的Logger像这样:
project.logger.info(…)
Logger
private static final Logger logger = Logging.getLogger(ConfigurationPluginInitBase.class)
话虽如此,您的日志消息当前可能不显示的原因可能是Gradle的默认日志级别为LIFECYCLE–但您似乎仅登录到INFO。您可以尝试运行带有该--info选项的Gradle 来查看您的消息。
LIFECYCLE
INFO
--info