没有日志消息的代码

时间:2015-04-13 15:55:53

标签: java logging

我偶尔会遇到一个类,其中大部分代码都是记录调用。 e.g。

public init(Config config) {
  logger.info("Configuring ...");

  if (config.hasInitInterval()) {
    initInterval = config.getInitInterval();
    logger.info("Set initInterval to " + initInterval);
  }
  ...
  try {
    logger.info("Updating access points " + config.getAccessPoints());
    updateAccessPoints(config.getAccessPoints())      
  } catch (Throwable e) {
    logger.warn("Init failed due to ", e);
  }
  ...
  if (logger.isDebugEnabled ()) {
    for(int i = 0; i < config.getModifiers().size(); i++) {
       try {
         isValidModifier(config.getModifiers().get(i));
       } catch (Exception e) {
          throw new IllegalArgumentException ("Wrong modifier: " config.getModifiers().get(i));
       }
    }
  }
}

当一个类格式不正确并且包含注释时,很难阅读代码。 我使用代理模式来部分改进它,但它只适用于在调用方法之前或之后记录某些东西。

将功能与日志记录分开的最佳做法是什么?

0 个答案:

没有答案