Actually, in the original report I was using log4j12-api. It was a puzzle to determine why your test passed while mine failed. My code looked like:
private static final org.apache.logging.log4j.Logger log4j2Logger = LogManager.getLogger(Log4j2Testing.class.getName());
private static final Category category2 = Category.getInstance(Log4j2Testing.class);
As it turns out, the order in which the loggers were created changed the result. See
LOG4J2-51. I was able to get correct results by flipping the order of the getLogger/getInstance calls.
In your patch for the SLF4J API, the problems with slf4jLogger are resolved since SLF4JLogger no longer extends AbstractLogger. But a problem remains with the getFQCN() logic.
I have a patch to correct this. It builds on the patches in
LOG4J2-51. Note: LOG4J2-51 temporarily causes your new test case to fail, but the forthcoming patch fixes the root cause.