I would like to finish up LOG4J2-547, but I had some questions that are on
the JIRA that I would like to get answered. I'll summarize them here:

1) Should the Logger streams be put in its own module?
    * If we do this, it will make testing easier as I could pull in
log4j-core (as a test dependency).
    * Removing the factory method from the Logger interface fits the
pattern of most other streaming wrappers in the JDK which use constructors.
So there is no good reason for why this needs to be in log4j-api. But there
is no good reason for it to be in core, either as it only depends on
log4j-api, not log4j-core.

2) Should we reverse the order of identifying the caller to start at the
bottom of the call stack, rather than the top
    * The performance difference is so small that it cannot be detected
with JMH
    * This impacts the way I implement the logger streams (inheritance vs.
wrapper)
    * It makes the code simpler trying to detect the caller

Or do we forget the logger streams entirely. In this case, can we please
remove what is there currently in log4j-api?

-- 

Bruce Brouwer

Reply via email to