This really says it all: the comment is correct, the actual code isn't: //if there is no logger, or if it's set to log only coarser events //than the trace level, skip and return - if (logger != null && logger.levelCoarserThan(level)) { + if (logger == null || logger.levelCoarserThan(level)) {