log4net un archivo por ejecución

Necesito que mi aplicación cree un archivo de registro cada vez que se ejecuta.

Mi formato preferido sería App.log.aaaa-MM-dd_HH-mm-ss . Si eso no es posible, me conformaría con App.log.yyyy-MM-dd.counter

Esta es mi configuración actual de appender:

       

Pero crea una cantidad aleatoria de archivos según la fecha y la hora.

Supongo que la aplicación debe crear solo un archivo de registro cada vez que se ejecuta, por lo que no necesita un astackdor de archivos rodantes (aunque mi solución también se aplicaría a los astackdores de archivos rodantes):

        

(Obviamente, puede usar su propio diseño y otras configuraciones para el apéndice del archivo).

También tenga en cuenta que puede configurar su estilo de rodadura como

rollingstyle="Once"

y creará un nuevo archivo cada vez que se ejecute. Si staticLogFileName se establece en true (por ejemplo, logname.log ), los registros anteriores se establecerán en logname.log.1 , logname.log.2 , etc.

El número de archivos guardados antes de sobrescribir el más antiguo (por ejemplo, 10) se puede controlar configurando

maxSizeRollBackups="10"

Editar: mi configuración, que crea un registro con fecha y hora por ejecución (a menos que exista, en cuyo caso sigue la regla .1 , tiene este aspecto:

            

No estoy 100% seguro de si necesito appendToFile="false" ya que los documentos dicen que se hace automáticamente cuando usas rollingStyle="Once" , pero esto lo hace más claro en cualquier caso.

Está documentado desde apache en los documentos de log4net en:

https://logging.apache.org/log4net/release/config-examples.html

ctrl + f para “por ejecución del progtwig”