Ho una classe che sta registrando da un metodo anonimo. Ho dumbed giù per fare il punto ...Posso ottenere log4net per aggiungere il nome della classe reale e non il nome della classe di chiusura generata?
public class SocketFlusher
{
private static readonly ILog Log = LogManager.GetLogger(typeof(SocketFlusher));
public void Flush()
{
Wait.For(timeout,() =>
{
... // work
Log.DebugFormat("{0} bytes available", socket.Available);
}
}
}
La mia configurazione log4net è buono (ho controllato l'uscita log4net debug="true"
e l'appender fa di lavoro). Il mio layout di appender è
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%-4thread] %-5level %class{1} - %message%newline"/>
</layout>
Ma, il mio output di registro ha quella classe statica generata automaticamente pazza in esso.
2011-03-21 18:10:20,053 [5 ] DEBUG SocketFlusher+<>c__DisplayClass1 - 82 bytes available
lo voglio dire SocketFlusher
, qual è il layout appender giusto per ottenere questo formato?