I'm having trouble with configuring Chainsaw.  Basically I'm trying to
get logging output from one application (that has log4j embedded in it)
and a lower level (that has java utils logging embedded in it).  So, I
have a socket receiver for the log4j stuff (and it works fine), and an
XMLSocketReciever for the java utils stuff (that does not work so far).

 

The Chainsaw GUI shows both receivers, yet the chainsaw log tab has
some cryptic and nasty sounding errors- "plugin directory cannot be
null, it must exist and be readable, by the normal classloader" (from
the archives this message typically happens if there is a missing jar
but I can't see what jar it is complaining about, since it shows both
receivers...).  The other error suggests that my xml chainsaw config
file is bad (but if it can't see how did it managed to define the two
receivers) "I/O error occurred while parsing xml file"

 

I give my config files (with host and port params written over with
generic text)

 

Chainsaw config side:

 

<log4j:configuration debug="true">

 

                <appender name="A2"
class="org.apache.log4j.ConsoleAppender">

<layout class="org.apache.log4j.SimpleLayout"/>

</appender>

 

                <plugin name="SocketReceiver"
class="org.apache.log4j.net.SocketReceiver">

<param name="Port" value="<port1>"/>

</plugin>

 

                <plugin name="XMLSocketReceiver"
class="org.apache.log4j.net.XMLSocketReceiver">

<param name="decoder"
value="org.apache.log4j.xml.UtilLoggingXMLDecoder"/>

<param name="Host" value="<HOST>"/>

<param name="Port" value="<port2>"/>

</plugin>

 

                <root>

<level value="debug"/>

</root>

</log4j:configuration>

 

Java.utils config side:

 

# add your own properties for testing below, they will NOT be
overridden

atmm.debug.level=info

# not sure which one will work, remove the other one when you find out

handlers=java.util.logging.SocketHandler

java.util.logging.SocketHandler.port = <port2>

java.util.logging.SocketHandler.host = <HOST>

# Override of global logging level for this handler

java.util.logging.SocketHandler.level=ALL

# default handler is XML (what we want) thus no need to set a handler

 

 

 

Reply via email to