> On Jun 9, 2016, at 3:55 PM, James Carman <ja...@carmanconsulting.com> wrote:
> 
> On Thu, Jun 9, 2016 at 2:19 PM Matt Sicker <boa...@gmail.com> wrote:
> 
>> There is a huge list of advantages to using log4j-api over slf4j-api
>> nowadays, plus I do prefer to use Apache dependencies in Apache projects
>> unless the competition is clearly better for the use case (like using Jetty
>> instead of Tomcat in Karaf due to OSGi support). Also, using log4j-api
>> works fine with logback as well, so it's not like it prevents people from
>> using slf4j bindings at runtime.
>> 
>> 
> It's just my personal preference.  I have grown used to it and use it so
> much.  In Karaf (where I spend most of my time these days), I don't even
> have to think about it.

That is understandable. But you should really compare the APIs. Just as SLF4J 
is much better than Commons Logging, so too is Log4j’s API much better than 
SLF4J’s - at least in the opinion of those who develop Log4j. 

Also, SLF4J advertises 2 key features - parameterized log statements and 
Markers.  However, SLF4J markers are a mess. The code isn’t thread safe and has 
terrible performance (which you can see on the Log4j performance page). Log4j 
also supports parameterized logging, but it also supports using printf style 
strings, MessageFormat strings as well as logging Messages instead of Strings. 
And, of course, it supports Lamda’s, which goes even further into not needing 
to wrap logging statements in if isEnabled checks.

And as Gary mentioned, we intentionally created a bridge from Log4j’s API to 
SLF4J for those who want to use some other implementation.

Ralph



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to