auf der vorherigen Antwort Ausbau -
Um einen Trace-Listener für das log4net.Internal.Debug Spur hinzufügen möchten, fügen Sie diese zu Ihrer App config:
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add
name="textWriterTraceListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="c:\temp\log4net.txt" />
</listeners>
</trace>
</system.diagnostics>
Ersetzen der initializeData Wert Attribut oben mit gewünschter Protokolldateipfad. Stellen Sie sicher, dass der Anwendungs- oder ASP.NET-Serverprozess über die Berechtigung verfügt, in diese Datei zu schreiben.
Sie können auch die Nachrichten überprüfen, die beim Start von der log4net-Konfiguration zurückgegeben werden. Ab der log4net-Version 1.2.11 geben die XmlConfigurator.Configure() -Methoden eine ICollection zurück, die Strings enthält, die Probleme auflisten, die während des Konfigurationsprozesses aufgetreten sind.
Wenn Sie also so etwas wie dies bekommen:
XmlConfigurator.Configure();
Änderung es
ICollection configMessages = XmlConfigurator.Configure();
und inspizieren configMessages in einem Debugger, oder sie irgendwo ausdrucken, z.B.
foreach (string msg in configMessages)
{
Console.WriteLine(msg);
}
Wenn alles andere fehlschlägt, laden Sie die log4net Quelle, um das Projekt zu Ihrer Lösung hinzufügen und das Projekt statt log4net.dll verweisen. Jetzt können Sie im Debugger auf die log4net-Aufrufe zugreifen.
Nach ein wenig mehr Graben (nach Ihrem Zeiger, um das interne Debuggen zu aktivieren, sieht es aus, als würde ein Listener für die System.Diagnostics.Trace aktiviert werden. –
Es sollte auch beachtet werden, dass appSettings vor dem System gehen muss.Diagnoseattribut – Dan