--- Jon Stevens <[EMAIL PROTECTED]> wrote:
> on 8/14/01 5:08 PM, "Morgan Delagrange"
> <[EMAIL PROTECTED]> wrote:
> 
> > If it were just me, I would say, "forget it", and
> > stick with Log4J.  However, the idea of an
> abstraction
> > layer has grown on me a little.
> 
> Like I said, I used to agree with you.
> 
> > Here's the problem: I know that logging API Alpha
> > works great for me, but if I'm trying to release a
> > "common" component, I have to account that other
> users
> > may have a fancy customized configuration that
> only
> > works for logging API Beta.  So do I alienate
> those
> > people, or do I try to accommodate them?  Let's
> face
> > it, once Sun releases its API, it's going to get
> ugly.
> 
> Jason's excellent argument against this is that
> Log4J provides an API to
> allow you to plug in other logging implementations.
> I forget the name right
> now, but starts with an "A..."

I'll assume you're being coy and mean Appender.

Yes, that may pan out as well.  If people are willing
to allow Log4J classes in the code, under the
assumption that Appenders can be written for other
APIs, that would be cool with me and I would happily
withdraw the proposal.  Some people just get a rash
when you mention Log4J.

> > I'm OK with the abstraction, as long as a) we get
> > reasonable buy-in, and b) we remember it's an
> > ABSTRACTION and do not try to make it a logger.  I
> > really hope it bears out, although only time will
> tell
> > how acceptable an abstraction layer will be for
> all
> > the APIs out there.  One thing is for sure: some
> > components need logging.
> 
> I agree about the need. However, you contradict
> yourself:

OK, let me elucidate:  

> "b) we remember it's an ABSTRACTION and do not try
> to make it a logger."

  The Logger component should perform actual logging,
  except on a very basic level.  Any real logging 
  logic should be delegated to Log4J, LogKit, or
  whatever.

> and
> "some components need logging."

  Regardless of how it is performed, some components
  should have logging.  It's unfortunate, for example,
  to not be able to turn on logging and see where 
  your DBCP is leaking connections.  We either bite
  the bullet on Log4J itself or use the abstraction
  layer in our classes, which delegates to Log4J or
  whatever.

> I'm not sure they need the abstraction layer though.
> 
> -jon
> 

If we can get buy in on Log4J, I'm in.

- Morgan

=====
Morgan Delagrange
http://jakarta.apache.org/taglibs
http://jakarta.apache.org/commons

__________________________________________________
Do You Yahoo!?
Make international calls for as low as $.04/minute with Yahoo! Messenger
http://phonecard.yahoo.com/

Reply via email to