8
votes

We are using log4net with rolling file appender.

As we are using load balancing servers log files are generated on both the of the servers and looking at them is of a lot problem.

We are thinking of some centralisied logging which can hold all the logs of different components at one place and if required can be viewed with some log viewer or a customised UI.

We have some proposed solutions to it

  1. ADO appender
  2. WCF appender
  3. MSMQ appender where we send message to msmq and some windows service which will pick up the messages from msmq and place it in log files.

More suggestion please post it..

2
+1 Interesting. How about writing logs to SQL Server or something like that?Dead account
using ado appender we can write directly database (SQL server), but dont know how it hit the performanceMiral

2 Answers

2
votes

A simple solution is to use Syslog, using the RemoteSyslogAppender

Once you have a Syslog server setup you can use this 'out of the box', with no need for the additional work required using ADO, WCF or MSMQ

A good Syslog server for Windows is Kiwi, with both free and commercial (has more functionality than the free version) versions available. Kiwi comes with a viewer as well.

2
votes

You can use, for example, a UdpAppender or a RemotingAppender to send the logged events over a network to a central point which logs them to disk. Note that the UDP version can drop messages under heavy network load, as UDP does not offer delivery guarantees.

Alternatively, you could base a TcpAppender class on UdpAppender which uses TCP rather than UDP - providing a reliable delivery service.