[Python-es] pregunta rapida sobre RotatingFileHandler

2018-03-17 Thread Jose Caballero
Hola,

pregunta: ?alguien sabe que pasa si se intenta escribir un mensaje de
"log" a la vez que el RotatingFileHandler esta rotando el fichero?

Tenemos una aplicacion que usa el logrotate.d standard de linux. Pero
para evitar problemas, primero se mata el proceso, se hace la
rotacion, y luego se reinicia el proceso.

Me gustaria saber si el handler RotatingFileHandler me puede evitar
esos problemas.
Entiendo que internamente hace tambien un cambio en el "file descriptor".
Pero no tengo claro que pasa si se intenta escribir justo cuando se
esta haciendo la rotacion.

Cualquier comentario, o mejor aun link a documentacion, es mas que bienvenido.

Saludos,
Jose

P.D. perdon por la falta de tildes. Teclado gringo.
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


Re: [Python-es] pregunta rapida sobre RotatingFileHandler

2018-03-18 Thread Chema Cortes
El 17 de marzo de 2018, 15:44, Jose Caballero 
escribió:

> Hola,
>
> pregunta: ?alguien sabe que pasa si se intenta escribir un mensaje de
> "log" a la vez que el RotatingFileHandler esta rotando el fichero?
>
> Tenemos una aplicacion que usa el logrotate.d standard de linux. Pero
> para evitar problemas, primero se mata el proceso, se hace la
> rotacion, y luego se reinicia el proceso.
>
> Me gustaria saber si el handler RotatingFileHandler me puede evitar
> esos problemas.
> Entiendo que internamente hace tambien un cambio en el "file descriptor".
> Pero no tengo claro que pasa si se intenta escribir justo cuando se
> esta haciendo la rotacion.
>
> Cualquier comentario, o mejor aun link a documentacion, es mas que
> bienvenido.
>

La pregunta correcta sería si logging es "thread-safe". El sistema de
logging usa bloqueos para que no haya dos procesos escribiendo a la vez,
por lo que se puede asegurar que no habrá un hilo escribiendo mientras otro
esté rotando los handlers.

https://docs.python.org/3.6/library/logging.html#thread-safety



>
> Saludos,
> Jose
>
> P.D. perdon por la falta de tildes. Teclado gringo.
> ___
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
>



-- 
Hyperreals *R  "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
Buscador Python Hispano: http://ch3m4.org/python-es
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


Re: [Python-es] pregunta rapida sobre RotatingFileHandler

2018-03-18 Thread Jose Caballero
>
>
> La pregunta correcta sería si logging es "thread-safe". El sistema de
> logging usa bloqueos para que no haya dos procesos escribiendo a la vez, por
> lo que se puede asegurar que no habrá un hilo escribiendo mientras otro esté
> rotando los handlers.
>
> https://docs.python.org/3.6/library/logging.html#thread-safety
>
>

Muchas gracias !!
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


Re: [Python-es] pregunta rapida sobre RotatingFileHandler

2018-08-20 Thread Alberto Curro
El sáb., 17 mar. 2018 a las 14:45, Jose Caballero ()
escribió:

> Hola,
>
> pregunta: ?alguien sabe que pasa si se intenta escribir un mensaje de
> "log" a la vez que el RotatingFileHandler esta rotando el fichero?
>
> Tenemos una aplicacion que usa el logrotate.d standard de linux. Pero
> para evitar problemas, primero se mata el proceso, se hace la
> rotacion, y luego se reinicia el proceso.
>
> Me gustaria saber si el handler RotatingFileHandler me puede evitar
> esos problemas.
> Entiendo que internamente hace tambien un cambio en el "file descriptor".
> Pero no tengo claro que pasa si se intenta escribir justo cuando se
> esta haciendo la rotacion.
>

 El github de CPython te habría dado la solución a tus dudas:

https://github.com/python/cpython/blob/master/Lib/logging/handlers.py

Si te fijas, en la clase BaseRotatingHandler comprueba si debe hacer un
rollover (rotate) durante el emit. Si el rollover debe hacerse, se aplica
un bloqueo por el subsistema logging, hace el rollover, y después escribe.

Como bien te ha dicho Chema en otro reply, la libreria logging de python es
thread-safe debido a que hace los locks por tí.


> Cualquier comentario, o mejor aun link a documentacion, es mas que
> bienvenido.
>

docs.python.org, siempre.


> Saludos,
> Jose
>
> P.D. perdon por la falta de tildes. Teclado gringo.
> ___
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
>
___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es