Olaf Krische updated ZOOKEEPER-850:
* replaces log4j with slf4j code (also in contrib for bookkeeper,
zooinspector,rest,loggraph), added slf4j dependencies into several ivy.xml files
* you must add slf4j-api-1.6.1.jar and slf4j-log4j12-1.6.1.jar (bridge from
sl4j to log4j) to the classpath, if not using the standard scripts
* log4j remains as the final logger yet. Therefore there is still work to do:
remove programmatic access to the log4j from certain classes (which add
appenders or configure log4j at runtime), or move them to contrib
introduces indirection for logging via slf4j-api. adding bridge from slf4j to
1) added "slf4j" dependency in ivy.xml
- "import org.apache.log4j.Logger" with "org.slf4j.Logger,LoggerFactory"
- "org.apache.log4j.Logger with "org.slf4j.Logger"
- "org.apache.log4j.Logger.getLogger" with "org.slf4j.LoggerFactory.getLogger"
3) replaced log.fatal with log.error, slf4j api has no log.fatal, faq
4) fixed logging requests, like "log.error(object)" with
"log.error(String.valueOf(object))" to match slf4j api
5) removed direct log4j-api access from
"org.apache.bookkeeper.util.LocalBookKeeper" in contrib.
it added programmatically a console appender to the existing logger in the
constructor. this can be done anytime via log4j.properties (which had by
default INFO,CONSOLE anyways)
> Switch from log4j to slf4j
> Key: ZOOKEEPER-850
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-850
> Project: Zookeeper
> Issue Type: Improvement
> Components: java client
> Affects Versions: 3.3.1
> Reporter: Olaf Krische
> Assignee: Olaf Krische
> Fix For: 3.4.0
> Attachments: ZOOKEEPER-3.3.1-log4j-slf4j-20101031.patch.bz2,
> ZOOKEEPER-3.4.0-log4j-slf4j-20101102.patch.bz2, ZOOKEEPER-850.patch
> i would like to see slf4j integrated into the zookeeper instead of relying
> explicitly on log4j.
> slf4j is an abstract logging framework. There are adapters from slf4j to many
> logger implementations, one of them is log4j.
> The decision which log engine to use i dont like to make so early.
> This would help me to embed zookeeper in my own applications (which use a
> different logger implemenation, but slf4j is the basis)
> What do you think?
> (as i can see, those slf4j request flood all other projects on apache as well
> Maybe for 3.4 or 4.0?
> I can offer a patchset, i have experience in such an migration already. :-)
This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.