rolling org logmanager loggers example configurar vb.net debugging configuration log4net

vb.net - org - ¿Cómo configuro log4net para que log.IsDebugEnabled sea verdadero?



loggers log4j (6)

Antes de llamar a LogManager.GetLogger ("")

Debe llamar a log4net.Config.XmlConfigurator.Configure (); En una aplicación ASP.NET, probablemente quiera poner esta llamada en Application_Start

Estoy tratando de usar log4net en una aplicación ASP.NET con Visual Studio 2005. He declarado una instancia del registrador de la siguiente manera:

Private Shared ReadOnly log As ILog = LogManager.GetLogger("")

Estoy tratando de usarlo de la siguiente manera:

If log.IsDebugEnabled Then log.Debug("Integration Services Constructed") End If

Aquí está mi configuración:

<log4net> <root> <level value="DEBUG" /> <appender-ref ref="RollingFileAppender" /> </root> <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="..//logs//logfile.log"/> <appendToFile value="true"/> <rollingStyle value="Size"/> <maxSizeRollBackups value="10"/> <maximumFileSize value="1MB"/> <staticLogFileName value="true"/> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <param name="LevelMin" value="DEBUG" /> <param name="LevelMax" value="FATAL" /> </filter> </appender> </log4net>

Desafortunadamente, log.IsDebugEnabled siempre es falso.
¿Cómo configuro log4net para que pueda registrar solo los mensajes de depuración?


Sí, hazlo como dijo Anson. Además, si llama a Configure en una biblioteca de clases, puede hacerlo agregando un atributo a su clase:

[assembly: XmlConfigurator(Watch = true)]

y si está usando el archivo log4net.config , log4net.config así:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]


Si está configurando log4net en código en lugar de en un archivo de configuración, puede llamar a log4net.Config.BasicConfigurator.Configure antes de GetLogger .


Si está utilizando un archivo de configuración separado para log4net, haga esto: después de seguir todas las demás instrucciones de configuración, asegúrese de hacer clic derecho en el archivo en el explorador de soluciones de Visual Studio, seleccionar propiedades, expandir el grupo de opciones "Avanzadas", establecer el valor "Directorio de Copiar a Salida" como "Copiar siempre". Eso hará la magia ... :) ¡salud!


Use esto en cualquier método antes de usar el registro:

log4net.Config.XmlConfigurator.Configure ();

En App.Config, la configuración debe ser:

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


VB.NET -

<Assembly: log4net.Config.XmlConfigurator(Watch:=True)>