there's been a pretty good debate over on Solr Dev about this. My
preference would either be SLF4J or Log4j. Commons logging has a lot
of known issues with the way it handles classloading, and even the
creators only recommend it's use in certain situations. I would
recommend we go to SLF4J, but Log4j is good too. Do we know what
Hadoop uses? That would be the other preference.
On May 10, 2008, at 3:39 PM, Sean Owen (JIRA) wrote:
Standardize on java.util.logging, Commons Logging, log4j?
---------------------------------------------------------
Key: MAHOUT-52
URL: https://issues.apache.org/jira/browse/MAHOUT-52
Project: Mahout
Issue Type: Improvement
Reporter: Sean Owen
Priority: Minor
I see the log4j and Commons Logging .jars in the lib/ directory.
log4j isn't used; Commons Logging is used in one class
(Parametered). My code just used java.util.logging directly.
I figure we should standardize on one approach to logging. I
personally think they're all just about the same; the only real best
practice is using one system.
I have always just used java.util.logging since it is built into
Java 1.4+. Commons Logging offers an extra layer of abstraction and
lets you switch between java.util.logging and log4j underneath.
That's cool, but I've not found it compelling enough to want to add
another layer and another .jar file.
But, I guess log4j is present because hadoop uses it directly?
The .jar seems to have a dependency on it.
In that case maybe we are better off using Commons Logging to let us
integrate with log4j logging that Hadoop uses, and leave open the
possibility of other callers using java.util.logging underneath.
If that's cool I can switch my code to use Commons Logging.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.