2010-02-19 12 views
6

Ho un'applicazione Web Java che attualmente utilizza Log4J per la registrazione. Mi piacerebbe usare Apache Chainsaw per visualizzare e analizzare i registri da remoto. Finora, ho avuto difficoltà a capire come configurare sia il lato client (il client Chainsaw) che il lato server (la configurazione di log4j nella mia webapp) per abilitare correttamente la registrazione remota.Come posso visualizzare gli eventi del registro da remoto usando Log4J e Apache Chainsaw?

Ecco cosa ho provato finora.

Server lato log4j config

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
<log4j:configuration debug="true"> 

    <appender name="myRFA" class="org.apache.log4j.RollingFileAppender"> 
     <param name="File" value="/logs}/my.log"/> 
     <param name="Append" value="false" /> 
     <param name="MaxFileSize" value="10MB"/> 
     <param name="MaxBackupIndex" value="10"/> 
     <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" 
      value="%d{ISO8601} %p - [%X{LoggingId}] - %t - %c - %m%n"/> 
     </layout> 
    </appender> 

    <appender name="SOCKET" class="org.apache.log4j.net.SocketAppender"> 
     <param name="Port" value="4445"/> 
     <param name="RemoteHost" value="localhost"/> 
     <param name="ReconnectionDelay" value="60000"/> 
     <param name="Threshold" value="DEBUG"/> 
    </appender> 

    <logger name="com" additivity="false"> 
     <level value="warn"/> 
     <appender-ref ref="myRFA"/> 
    </logger> 

    <logger name="org" additivity="false"> 
     <level value="warn"/> 
     <appender-ref ref="myRFA"/> 
    </logger> 

</log4j:configuration> 

client lato Chainsaw config

Ho creato un nuovo ricevitore con le seguenti proprietà

name=SOCKET 
port=4445 

Devo ammettere che I don' Capisco davvero come dovrebbe funzionare. Chainsaw sta interrogando il server remoto? Il server remoto si connette a Chainsaw e sta premendo eventi?

Guida, collegamenti a semplici tutorial o strumenti alternativi sarebbero tutti benvenuti.

risposta

2

penso che è necessario aggiungere l'appender PRESA ad ogni logger:

<logger name="com" additivity="false"> 
     <level value="warn"/> 
     <appender-ref ref="myRFA"/> 
     <appender-ref ref="SOCKET"/> 
    </logger> 

    <logger name="org" additivity="false"> 
     <level value="warn"/> 
     <appender-ref ref="myRFA"/> 
     <appender-ref ref="SOCKET"/> 
    </logger> 
+0

Che ha fatto il trucco. Grazie! – braveterry