我们传统的记录方式是:
if (logger.isDebugEnabled()) {
logger.debug("something to log, and barbarbar {}", object);
}
但是如何使用lambda表达式进行日志记录以减少代码行和复杂性呢?
logger.debug(() -> return "something to log, and barbarbar " + object);
有没有理由说slf4j或其他记录器不提供这种方式来记录?造成对象创建开销?
我们传统的伐木方式是......
在每个用例中使用条件logger.isXXXXEnabled()
不是强制性的。它仅在您记录需要很长时间才能创建的对象时使用。例如,当您需要将某些数据库查询或复杂结构的日志结果转换为XML / JSON等时。
对于其他情况,此检查过多。