2010-09-23 8 views
9

Czy w usłudze log4net można umieścić moduł dodający, który może umożliwić klientowi formatu WinForm odczytanie dziennika log4net na innym serwerze bez użycia udziału? Moja aplikacja jest hostowana jako usługa internetowa. Szukam odbiorcy HTTP lub czegoś podobnego.Czy Log4Net Http Appender istnieje?

Odpowiedz

4

Myślę, że można użyć Remoting appender, coś takiego:

<appender name="RemotingAppender" type="log4net.Appender.RemotingAppender" > 
    <sink value="http://localhost:8080/LoggingSink" /> 
    <lossy value="false" /> 
    <bufferSize value="95" /> 
    <onlyFixPartialEventData value="true" /> 
</appender> 

Według docs:

appender ten jest przeznaczony do dostarczania zdarzeń do zdalnego zlewu. Jest to dowolny obiekt , który implementuje interfejs RemotingAppender.IRemoteLoggingSink . Dostarcza zdarzenia przy użyciu usługi .NET. Obiekt dostarczający zdarzenia do jest określony przez ustawiając właściwość Append Sink.

1

Istnieje również UdpAppender i nie jest to open source klient może odbierać te wiadomości:

http://log2console.codeplex.com/

+0

Czy UDP umożliwia przegląd całego dziennika? A może po prostu wydarzenie w czasie rzeczywistym, które ma miejsce? log2console jest świetny, ale chciałbym zrobić to samo w mojej aplikacji WinForm. Oczywiście nie tak solidny jak log2console. Mam na myśli coś takiego jak http://geekswithblogs.net/kobush/archive/2005/07/15/46627.aspx – Renegrin

+0

Dzięki UDP otrzymujesz tylko zdarzenia w czasie rzeczywistym. Twój link dotyczy konfiguracji piły łańcuchowej podobnej do log2console ... Nie jestem pewien, co próbujesz mi powiedzieć. –

5

Jest projekt GitHub nazywa PostLog że jest HttpAppender dla log4net.