报告未被保护条件包围的日志记录调用。 对调用的实参进行评估可能开销巨大。 当日志记录语句使用的级别禁用日志记录时,使用临界子句包围日志记录调用可避免这种开销。 这对于最不严重的日志记录调用级别(跟踪、调试、最精细)特别有用,因为这些调用在生产环境中最常被禁用。

示例:


  public class TestObject {
    void test(Object object) {
      LOG.debug("some logging " + expensiveCalculation(1));
    }
  }

在应用快速修复后:


  public class TestObject {
    void test(Object object) {
      if(LOG.isDebugEnabled()){
        LOG.debug("some logging " + expensiveCalculation(1));
      }
    }
  }

此检查支持 Log4j2SLF4J 日志记录框架( 构建器除外)。

2024.2 最新变化