2010-02-19 7 views
6

Mam aplikację internetową Java, która obecnie używa Log4J do logowania. Chciałbym użyć Apache Chainsaw do zdalnego przeglądania i analizowania dzienników. Do tej pory miałem problemy ze zrozumieniem, jak skonfigurować zarówno stronę klienta (klienta Chainsaw), jak i serwer (konfiguracja log4j w mojej aplikacji internetowej), aby umożliwić zdalne rejestrowanie.Jak zdalnie przeglądać zdarzenia rejestrowania przy użyciu Log4J i Apache Chainsaw?

Oto, co próbowałem do tej pory.

Server side 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 strona Chainsaw config

stworzyłem nowy odbiornik o następujących właściwościach

name=SOCKET 
port=4445 

będę przyznać, że don” t naprawdę zrozumieć, jak to wszystko ma działać. Czy Chainsaw odpytuje serwer zdalny? Czy zdalny serwer łączy się z piłą łańcuchową i przesyła zdarzenia do niej?

Wskazówki, linki do prostych samouczków lub alternatywne narzędzia byłyby mile widziane.

Odpowiedz

2

Chyba trzeba dodać gniazdka appender do każdego rejestratora:

<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

To załatwiło sprawę. Dzięki! – braveterry

Powiązane problemy