2011-01-13 3 views
1

Je une application ASP.NET MVC qui a une classe de programme d'amorçage qui configure log4net lors du démarrage de l'application comme suit:Quel est le problème avec ma configuration log4net?

public static void Configure(IApplicationContext applicationContext) 
{ 
    var appender = new log4net.Appender.FileAppender 
    { 
     Layout = new log4net.Layout.PatternLayout("%d [%t]%-5p %c [%x] <%X{auth}> - %m%n"), 
     File = applicationContext.GetLogFile().FullName 
    }; 

    BasicConfigurator.Configure(appender); 
} 

j'ai vérifié que lorsque j'appelle la fonction d'enregistrement plus tard que le référentiel est configuré:

LogManager.GetRepository().Configured 

cela renvoie la valeur true.

L'emplacement de applicationContext.GetLogFile().FullName existe et dispose également des autorisations définies pour tout utilisateur pour pouvoir créer et modifier des fichiers, donc je ne comprends pas pourquoi cela ne parvient pas à créer un fichier journal ou à générer des données. Maintenant, je sais que vous pouvez utiliser les fichiers de configuration et XML dans le Web.config, mais parce que l'emplacement du fichier journal et la configuration vont changer d'un site à l'autre, je dois le faire dans le code.

S'il vous plaît quelqu'un peut-il m'aider.

Répondre

3

vous devez ajouter un

appender.ActivateOptions(); 
+0

vous ne se produirait pas connaître la réponse à ma question suivante voulez-vous? – Richard

+0

http://stackoverflow.com/questions/4682885/log4net-config-sqlite-in-code – Richard

Questions connexes