From time to time on some project or via some tool or framework I use log4j directly or indirectly through some other library. I started using log4j way back when it was at IBM. For the most part its a reasonable piece of software that does what it says on the tin.
However I've lost count of the times I've swore loudly at log4j for, you guessed it, giving this lovely output...
log4j:WARN No appenders could be found for logger (foo).
log4j:WARN Please initialize the log4j system properly.
And then refusing to let you see any output whatsoever of the tool / project you've just run. How useful!
Then you spend an hour or two messing around with whatever tool / build / project / framework to munge some log4j.properties on the classpath / in a system property just to see some damned logging output.
Why oh why couldn't log4j just do the useful thing of logging a warning that its not found a configuration, but then go right ahead and use a sensible default, logging INFO & WARN level output to the console. If nothing else it'd reduce the amount of swearing :)
OK rant over, I feel better now