2010-04-09 13 views
20

Estoy usando el RollingFileAppender y el Tamaño rollingStyle. Por defecto, crea archivos de respaldo con una extensión numerada, esto me vuelve loco. ¿Es posible cambiarlo para que siempre use una extensión definida (digamos .txt o .log) e inserte el número como parte del nombre del archivo?Log4net RollingFileAppender Tamaño rollingStyle extensión de archivo

Por ejemplo:

myapp.log
myapp.1.log
myapp.2.log
myapp.3.log

Aquí está mi configuración actual:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
    <file value="myapp.log"/> 
    <appendToFile value="true"/> 
    <rollingStyle value="Size"/> 
    <maximumFileSize value="1MB"/> 
    <maxSizeRollBackups value="10"/> 
    <staticLogFileName value="true"/> 
    <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date{ISO8601} [%3thread] %-5level %logger{3}: %message%newline" /> 
    </layout> 
</appender> 

Respuesta

27

El PreserveLogFileNameExtension prop erty configurado en true debería hacer el truco. Nota: esta propiedad no está disponible en la versión 1.2.10 publicada actualmente pero es parte de la fuente actual. Si agarras y construyes la fuente eres bueno para ir.

Actualización: es genial ver que log4net está avanzando. Se ha lanzado la versión 1.2.11, y con ella la propiedad PreserveLogFileNameExtension.

+0

¿Dónde se obtiene la fuente actual de log4net? Cuando descargo el código fuente desde aquí: http://logging.apache.org/log4net/download.html no parece tener el soporte PreserveLogFileNameExtension. ¿Crees que puedo tomar el RollingFileAppender.cs al que te has vinculado anteriormente y superponerlo en mi fuente 1.2.10 con éxito? – BrettRobi

+0

Encontrará el repositorio aquí: http://logging.apache.org/log4net/source-repository.html. –

+0

¿Cómo puedo lograr el mismo comportamiento sin tener que parchar log4net, es decir, extendiendo log4net? – bitbonk

Cuestiones relacionadas