Duda sobre RotatingFileHandler

Hernán Martínez Foffani hernan en orgmf.com.ar
Jue Abr 21 16:13:18 CEST 2005


> voy a hacer una aplicación que constará de varios demonios corriendo
> simultaneamente. Quiero volcar los logs que estos generen en un único
> fichero, y para ello voy a utilizar le módulo logging con el handler
> RotatingFileHandler.
> Mi duda es:
>
> ¿Existe algún problema si varios programas acceden de forma
> concurrente al mismo fichero de log?

En *nix los write sobre archivos abiertos en modo append son
acciones atómicas.
Pareceria que hubiera un bug en la version 2.3.4, es la que tengo
instalada, en Lib/logging/handler.py en el metodo doRollover().
No puedo dedicarle mucho tiempo pero a simple vista parece que
al rotar los siguientes archivos de logs se abren en modo "w"
y no en append.  Igual no me hagas mucho caso...

> Lo ideal seria utilizar el demonio syslog y olvidarme de problemas,
> lo que pasa es que esta aplicación  también tiene que correr en win32.

Podrías usar el SyslogHandler del módulo logging y así
no tienes que cambiar toda la aplicación.  En el fondo
el fin último del módulo de logging es que un administrador pueda
adecuar el comportamiento de cualquier aplicacion a su política
particular.

-H.




Más información sobre la lista de distribución Python-es