Ich habe ASP.Net WebAPI
Projekt & mit Log4Net
API.Log4Net generiert keine Protokolldatei
protected void LogException(Exception ex)
{
var msgParams = new Dictionary<string, string>
{
{ "Message", ex.Message },
{ "StackTrace", ex.StackTrace },
};
_logger.Info(JsonConvert.SerializeObject(msgParams));
}
XML-Konfiguration
<?xml version="1.0" encoding="utf-8" ?> <log4net>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="App.log" />
<appendToFile value="true" />
<maximumFileSize value="50KB" />
<maxSizeRollBackups value="2" />
<encoding value="utf-8" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="RollingFile" />
</root>
Aber wenn jede Ausnahme & oben LogException auftritt() getroffen wird, weder ich jede Ausnahme immer noch ich sehe jede App.Log Datei in meinem Verzeichnis.
Was fehlt mir hier? Jede Hilfe/Anregung sehr geschätzt.
Wenn Sie ein Laufzeitverfolgungswerkzeug wie debugbiew verwenden, können Sie feststellen, dass das Apppool-Konto keine Berechtigung zum Erstellen der Datei hat. Sie sollten die Protokollierung an einem anderen Speicherort außerhalb des Anwendungsstamms konfigurieren. –
@tomredfern, ich renne als Adminstrator –
Nur um zu bestätigen, dass Sie log4net zur Laufzeit mit XmlConfigurator oder einem Assembly-Attribut konfigurieren? – stuartd