Google cloud dataflow 指定单元测试的日志级别

Google cloud dataflow 指定单元测试的日志级别,google-cloud-dataflow,Google Cloud Dataflow,有人知道如何为单元测试指定日志级别和/或启用调试级别日志消息吗 我正在为一个类编写\编辑一些单元测试,该类在我们的一个管道中扩展了DoFn。其中一个测试以一种有趣的方式失败,我想捕获日志消息(包括DEBUG)转发给其他开发人员 我正在使用Eclipse作为我的IDE。 我试过两件事 首先,我将其添加到运行配置-Dexec.args=“--defaultWorkerLogLevel=DEBUG” 其次,我在我的项目中的src/test文件夹下创建了一个resources文件夹,然后在其中放置了一

有人知道如何为单元测试指定日志级别和/或启用调试级别日志消息吗

我正在为一个类编写\编辑一些单元测试,该类在我们的一个管道中扩展了DoFn。其中一个测试以一种有趣的方式失败,我想捕获日志消息(包括DEBUG)转发给其他开发人员

我正在使用Eclipse作为我的IDE。 我试过两件事

  • 首先,我将其添加到运行配置
    -Dexec.args=“--defaultWorkerLogLevel=DEBUG”
  • 其次,我在我的项目中的src/test文件夹下创建了一个resources文件夹,然后在其中放置了一个log4j.xml,它应该能够启用调试消息
为了回答自然的第一个问题,是的,我非常确定调试消息被禁用,因为我将这一行添加到我的单元测试
System.out.println(String.valueOf(LOG.isDebugEnabled())并且确实看到控制台中打印的
false

谢谢你的帮助,
Dan

我认为,对于测试,您应该能够调整正在运行的JVM的日志级别。
defaultWorkerLogLevel
仅影响为分布式执行而启动的工作线程。DirectRunner使用slf4j,因此我认为您应该考虑调整slf4j日志记录级别,而不是log4j