'Rotate the file and create a new one.
If it\'s not possible to open new logfile, this will fail silently,
and continue logging to old logfile.'

def rotate(self):

    if (not (os.access(self.directory, os.W_OK) and os.access(self.path, os.W_OK))):
        return
    newpath = ('%s.%s' % (self.path, self.suffix(self.lastDate)))
    if os.path.exists(newpath):
        return
    self._file.close()
    os.rename(self.path, newpath)
    self._openFile()
