On Apr 25, 2007, at 1:50 AM, Curt Arnold wrote:
Probably not good for log4j 1.2.x itself to have any special
knowledge of a companion. If configurator needs to know details
like the class name of the bridge, then the whole thing should go
into log4j 1.2.x itself.
Any chance that you could stretch and somehow express this thing as
an object type that DOMConfigurator already knows about? For
example, could this be a "special" type of Renderer, Appender, or
Logger where you could do something like:
<renderer class="org.apache.log4j.julibridge.BridgeRenderer"/>
to instantiate the bridge without any new log4j side code.
Don't know if you were considering a bridge going from log4j to
java.util.logging, but that direction should fit into the appender
model fairly well. You could design an "appender" for taking log4j
logging events and outputting them to java.util.logging.Logger
calls. It would be configured something like:
<!-- takes log4j events and calls java.util.logging -->
<appender name="bridge"
class="org.apache.log4j.julibridge.JULIAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %c{2} - %m%n"/>
</layout>
</appender>
<root>
<appender-ref ref="bridge"/>
</root>
To take messages from java.util.logging and dispatch them into log4j
would require some key to signify the appender should work in
reverse. Don't have a great name for it, but import might work.
<!-- takes java.util.logging events and calls log4j -->
<appender class="org.apache.log4j.julibridge.JULIAppender">
<param name="import" value="true"/>
</appender>
I was putting log4j related sandbox projects under ".../logging/
sandbox/log4j". Since the sandbox is likely only a temporary home, I
don't see any need to move it.
I'm not sure about JULI. Seems a little cute. SLF4J calls it
JDK14. I think calling the project "logging-log4j-bridge", using the
package org.apache.log4j.bridge and the class "JDK14Appender" would
be better.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]