【问题标题】:Disable annoying PODAM logs禁用烦人的 PODAM 日志
【发布时间】:2018-12-31 12:35:43
【问题描述】:

我正在使用 PODAM 库用一些随机值填充我的 POJO,而 PODAM 正在向我的日志发送垃圾邮件。对于 1 个简单的测试,我的日志中有 6000 多行。我只能通过添加来关闭它。

已编辑:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
   <logger name="uk.co.jemos.podam.api.PodamFactoryImpl" level="INFO"/>-->
</configuration>

我只是想知道是否还有另一种方法可以实现? application.properties 中的 Looging.level.root=INFO 没有帮助,我也尝试了 LogManager.getLogger(PodamFactoryImpl.class).setLevel(LogLevel.OFF)

非常感谢

【问题讨论】:

    标签: java spring-boot logging jemos-podam


    【解决方案1】:

    将此代码放入您的测试或 setup() 方法中:

    import ch.qos.logback.classic.Level;
    import ch.qos.logback.classic.Logger;
    import org.slf4j.LoggerFactory;
    
        @BeforeAll
        static void setup() {
            Logger root = (Logger) LoggerFactory.getLogger("uk.co.jemos.podam.api");
            root.setLevel(Level.OFF);
        }
    

    【讨论】:

      【解决方案2】:

      您可以通过添加logging.level.&lt;package-or-fully-qualified-class&gt;=&lt;log-level&gt; 来关闭application.properties 中特定类或包的日志记录

      对于您的情况,可能类似于: logging.level.uk.co.jemos.podam.api.PodamFactoryImpl=OFF

      文档:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-custom-log-levels

      【讨论】:

      • 嗨,你提到的我已经尝试过了,只有当你使用 @SpringBootTest 或以某种方式启动属性时它才是真的。但是我的测试只是@RunWith(SpringRunner) 并没有启动应用程序属性。
      • 如果您不使用@SpringBootTest,可能不仅仅是未启动的属性。你不是有原因吗?
      • 是的,它的@RunWith(SpringRunner.class) 我不想使用@SpringBootTest,因为它的重量太重,只是为了填充几个值..
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-20
      • 2018-07-02
      • 2015-12-24
      • 2012-06-03
      • 1970-01-01
      • 2021-06-27
      • 1970-01-01
      相关资源
      最近更新 更多