One property of legacy code is inflation by irrelevant logging statements. Not only does this increase the size of a bulging code base, I’d also argue that it’s dead wrong.
Quite recently I’ve had the honor of making acquaintance with a piece of code that looked roughly like this:
if (LOGGER.isLoggable(Level.FINEST)) { LOGGER.log(Level.FINEST, "foo is now", foo.getValue()); } boolean result = doSomeActualWork(foo); if (LOGGER.isLoggable(Level.FINER)) { LOGGER.exiting(this.getClass().getName(), "bar", result); }