title: Is there a low level TCP appender for log4net?
body: <p>I've been using the <a href="http://logging.apache.org/log4net/release/sdk/log4net.Appender.UdpAppender.html">UDPAppender</a> to send logs to <a href="http://logstash.net">logstash</a>. I would like to be able to achieve failover of the logstash server through DNS.</p>
  
  <p>Implicitly, the <em>UDPAppender</em> does not detect whether or not the remote UDP port is available, but even if it did, when I configure it with a DNS name for <strong><em>remoteAddress</em></strong>, it is resolved to the ip address during initialization and recorded as an ip address in the <strong><em>RemoteAddresss</em></strong> property. I am aware of the <a href="http://logging.apache.org/log4net/release/sdk/log4net.Appender.RemotingAppender.html">RemotingAppender</a>, but this doesn't seem to like logstash because the logstash TCP input isn't implementing the .NET remoting protocol, and it looks as though it will suffer the same problem of resolving the remote ip address through DNS at the initialization step only.</p>
  
  <p>I'm considering implementing my own appender, by either wrapping the UDPAppender with a ping or copying the RemotingAppender by handling reconnection through the DNS name. Does anything like this already exist?</p>