J'utilise Common.Logging.Log4Net.Universal pour l'écriture de journaux au format xml, de sorte que je puisse le lire en utilisant YALV! Cependant, je ne peux pas voir que les journaux sont générés pour cela. J'ai utilisé cette technique pour la bibliothèque log4net normale et fonctionne sans aucun problème. Voici la configuration pertinente dans mon dossier « web.config »:Problème avec l'utilisation de Common.Logging.Log4Net.Universal pour l'écriture de journaux au format xml pour YALV pour analyser
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Universal.Log4NetFactoryAdapter, Common.Logging.Log4Net.Universal" >
<arg key="configType" value="FILE"/>
<arg key="configFile" value="~/log4net.config" />
</factoryAdapter>
</logging>
</common>
Et ici va mon fichier « log4net.config »:
<configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="C://Logs//mylogfile.xml" type="log4net.Util.PatternString"/>
<appendToFile value="true" />
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="INFO" />
<levelMax value="FATAL" />
</filter>
</appender>
<root>
<level value="ALL"/>
<appender-ref ref="FileAppender"/>
</root>
</log4net>
</configuration>
maintenant ci-dessous est le code pour générer réellement les journaux :
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
namespace MyNamespace
{
public class HomeController : Controller
{
private static readonly ILog Log = new Log4NetFactoryAdapter().GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public ActionResult Index()
{
Log.Error(m=>m("My First Logs"));
return View();
}
}
}
Lors de l'exécution, le code soit exécuté sans aucune erreur, mais le « mylogfile.xml » mentionnée ci-dessus n'est généré.
S'il vous plaît avis, si quelqu'un a essayé la même chose.