如何在Gradle中配置日志级别?

如何在Gradle中配置日志级别?,gradle,Gradle,是否可以让gradle读取logging.properties文件,以便按类设置日志记录级别?我想做的是查看我的调试语句,而不是正在使用的每个类的调试语句。例如,我想使用-Djava.util.logging.config.file=mylogging.properties gradle论坛上提到劫持控制台手柄,但我不确定这是否同样适用于非测试任务。这是目前不受支持的。可能有一个黑客来实现它,但我不知道一个。简单(如果有一定限制)的解决方案是在事后过滤输出,例如使用grep或使用日志查看器。试试

是否可以让gradle读取logging.properties文件,以便按类设置日志记录级别?我想做的是查看我的调试语句,而不是正在使用的每个类的调试语句。例如,我想使用
-Djava.util.logging.config.file=mylogging.properties


gradle论坛上提到劫持控制台手柄,但我不确定这是否同样适用于非测试任务。

这是目前不受支持的。可能有一个黑客来实现它,但我不知道一个。简单(如果有一定限制)的解决方案是在事后过滤输出,例如使用
grep
或使用日志查看器。

试试这个,它对我有用。我使用的是Gradle3.1

import static org.gradle.api.logging.LogLevel.*

project.logger.quiet "1. Level: quiet"
project.logger.error "1. Level: error"
project.logging.setLevelInternal(ERROR)
project.logger.quiet "2. Level: quiet"
project.logger.error "2. Level: error"

Barry

将此行添加到
gradle.properties

org.gradle.logging.level=info

将具有与“gradle--info”相同的效果。是否有方法使用设置文件在项目范围内打开日志记录?例如,在gradle.properties中设置--info标志?您可以从构建脚本中设置
gradle.startParameter.logLevel
。我已经尝试在根build.gradle中执行
gradle.startParameter.setLogLevel.info
logging.setLevel logLevel.info
,但没有效果。所有子项目都报告
println logging.level
INFO
,但它根本不会更改任何脚本输出。使用
--info
标志可按预期工作。在生成脚本中设置日志级别可能太晚。我不知道还有什么方法可以做到这一点。用例是什么?试图从Google的“发布管道”上的构建失败中获得更多的日志输出。到目前为止,它们还没有为命令行标志提供任何选项。