2012-11-23 19 views
7

Sto cercando di implementare log4net nella mia applicazione web asp.net. Ma sfortunatamente il file non è stato creato. Di seguito è la mia configurazione.log4Net file di log non in scrittura

1. Aggiunta riferimento log4net .dll

2. Impostazioni di Web.config.

<configSections> 
    <section name="log4net"type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> 
    </configSections> 
    <log4net> 
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
     <file type="log4net.Util.PatternString" value="E:/Log/error_%date{dd-MM-yyyy}.log"/> 
     <appendToFile value="true"/> 
     <rollingStyle value="Date"/> 
     <!--<maxSizeRollBackups value="5"/> 
     <maximumFileSize value="10MB"/> 
     <staticLogFileName value="true"/>--> 
     <datePattern value="yyyyMMdd" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date [%thread] %level %logger - %message%newline%exception%newline%newline"/> 
     </layout> 
    </appender> 
    <root> 
     <appender-ref ref="RollingFileAppender"/> 
    </root> 

    </log4net> 

3. Aggiunto riferimento assembly

 [assembly: log4net.Config.XmlConfigurator(Watch = true)] 

4. Entra scrivendo nel codice dietro

private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); 

try 
{ 
    throw new System.IO.FileNotFoundException(); 
} 
catch (Exception ex) 
{  
    log.Error("Error error logging", ex);  
} 

Questi sono i passi che avevo seguito, ma il registro non viene creato ...

fornite i vostri suggerimenti.

Grazie in anticipo

+1

sei sicuro di avere il permesso di scrittura per E:/log/Errore_ data% {gg-mm-aaaa} .log? –

+0

ys .. ho la possibilità di scrivere su E drive –

+0

Come stai ospitando la tua app, IIS? –

risposta

5

cercare di dare i permessi di scrittura in E:/Registro per l'utente asp.net o per tutti, quindi provare ad aggiungere requirePermission = attributo "false", in questo modo:

<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net" requirePermission="false" /> 

o è necessario specificare il livello di registrazione nella sezione principale, in questo modo:

<root> 
    <level value="ALL" /> 
    <appender-ref ref="RollingFileAppender" /> 
</root> 

here ASP.NET 3.5 – File Appender sample application

+1

Le autorizzazioni mi hanno fatto inciampare. Buona pesca. – erlingormar

Problemi correlati