Estoy tratando de conseguir la integración de log4net para Castle Windsor. Escribí mi clase con una propiedad pública del tipo ILogger
y tomé la configuración en mi app.config de la siguiente manera.Iniciando sesión con Castle.Facilities.Logging y log4net
<configuration>
<configsections>
<section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configsections>
<castle>
<facilities>
<facility id="logging" type="Castle.Facilities.Logging.LoggingFacility, Castle.Facilities.Logging" loggingApi="log4net" />
</facilities>
<components>
<component id="form1" type="WinFormsActiveRecordSample.Form1, WinFormsActiveRecordSample" />
</components>
</castle>
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="FileAppender" />
</root>
<appender name="FileAppender" type="log4net.Appender.FileAppender">
<file value="main.log" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date{dd.MM.yy HH:mm:ss} %-5level %logger - %message%newline" />
</layout>
</appender>
</log4net>
</configuration>
En mi opinión esto debería estar funcionando, pero no es así. Cuando configuro loggingApi="console"
, se registra correctamente. Cuando lo cambio a log4net no hace nada. La configuración de log4net se tomó de otro proyecto donde el bloque está funcionando. ¿Qué debo hacer para que se use el archivo de registro? ¿Debe haber una configuración especial de log4net?
Gracias por cualquier sugerencia
Boris
¿finalmente funcionó? –
Después de un pequeño cambio en mi código, sí lo hace :) – Booser