[Python-Dev] PEP 282 Implementation
Vinay Sajip
vinay_sajip@red-dove.com
Mon, 7 Oct 2002 09:16:29 +0100
Guido van Rossum wrote:
>> Chris McDonough wrote:
>>> It would be helpful for the FileHandler class to define a method
>>> which just closes and reopens the current logfile (instead of
>>> actually rotating a set like-named logfiles). This would allow
>>> logfile rotation to be performed by a separate process (e.g.
>>> RedHat's logrotate). Sometimes it's better (and even necessary) to
>>> be able to use system-provided log rotation facilities instead of
>>> relying on the native rotation facilities.
> Having looked at it again, I think that this is definitely better than
> doing log rotation in the FileHandler. The rotation code in the log
> handler currently calls tell() after each record is emitted. This is
> expensive, and not needed if you use an external process to watch over
> the log files and rotate them.
I think file rotation can definitely come out of the core, since there are
many ways to do it and no one "right" way. I'll move the rotation stuff into
a subclass of FileHandler called RotatingFileHandler (anyone think of a
better name?). The FileHandler will remain in the core module; the subclass
will be in the "logging.handlers" module.
Vinay