On Mon, 2002-07-22 at 14:18, [EMAIL PROTECTED] wrote: >... > I think there is a simpler solution for this class of problems, and > that would also work with log4j and doesn't require _any_ API change. > ( only changes to the adapter implementations ) > > Any 'wrapper' will use: > factory=LogFactory.getFactory(); > > factory.setAttribute( "commons-logging.wrapperClass", > "[CLASSNAME-OF-WRAPPER]"); > factory.getLog(), etc. > > The classname of wrapper will be passed to the impl.. > > - for log4j - this just gets passed further, since log4j already supports > this feature. > - for jdk1.4 or other loggers who don't support wrapping - there is > already code in Jdk14Logger that walks the stack trace. Curently it > uses a hard-coded '2 levels up', but it can use the wrapperClass > and walk up to find it.
That is an interesting idea, although in my particular case, I walk the stack a variable amount. Namely if the stack has method "log()" or method "internalLog()" I keep unrolling the stack - this may not be a great idea - but it gives good stack traces without changing other parts of tomcat. If a webapp wants to use its own logger wrapper, and the factory has a single attribute - would there be a conflict here? -bob -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>