I would be hard pressed to find any
logging system better than the one in Log4J. I used it at a previous employer
and just managed today to
convince my new employer that it should replace a proprietary system they paid
to have built that wasn’t serving them well.
Putting Log4J into JDK1.4 is a
decision that I have a hard time believing anyone would ever regret. It is truly
easy to use, has a lot of flexibility, and an official Sun stamp of approval
along with their careful improvements to the code would only benefit end users
like me. Any system that doesn’t offer as much functionality, flexibility and
ease of use as Log4J is, I think, an unfortunate
choice.
While I cannot speak to all the
points raised in a recent comparison of Log4J to JSR47 I can speak to two in
particular:
-
Functionality: the wide set of appenders that come standard with Log4J has been a big
selling point everywhere I’ve used it. Even if we do
not use all of the appenders, it’s not hard to imagine
customers of ours who will be interested in using some of the additional ones
provided (i.e. NT event logging or Unix Syslog).
-
Levels: I can vouch for having
arguments about how to use the five simple levels in Log4J between myself and
just one other programmer (not loud shouting type arguments, but serious
disagreements over when each should be used). Adding additional levels was the
last thing on our minds and I believe really unneeded for most projects. I don’t
think ALL, OFF, FINE, FINER and FINEST really add anything to the party, BUT, if
they were deemed important they could easily be added to the existing Log4J
system when it was folded into the JDK1.4.
Thanks,
John Munsch
Note: I am not acting in any official capacity for my employer, but rather just giving my two cents as a Java developer with experience using an excellent API.