MCPcopy Create free account
hub / github.com/Boris-code/feapder / doRollover

Method doRollover

feapder/utils/log.py:41–67  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

39 self.placeholder = str(len(str(backup_count)))
40
41 def doRollover(self):
42 if self.stream:
43 self.stream.close()
44 self.stream = None
45 if self.backup_count > 0:
46 for i in range(self.backup_count - 1, 0, -1):
47 sfn = ("%0" + self.placeholder + "d.") % i # '%2d.'%i -> 02
48 sfn = sfn.join(self.baseFilename.split("."))
49 # sfn = "%d_%s" % (i, self.baseFilename)
50 # dfn = "%d_%s" % (i + 1, self.baseFilename)
51 dfn = ("%0" + self.placeholder + "d.") % (i + 1)
52 dfn = dfn.join(self.baseFilename.split("."))
53 if os.path.exists(sfn):
54 # print "%s -> %s" % (sfn, dfn)
55 if os.path.exists(dfn):
56 os.remove(dfn)
57 os.rename(sfn, dfn)
58 dfn = (("%0" + self.placeholder + "d.") % 1).join(
59 self.baseFilename.split(".")
60 )
61 if os.path.exists(dfn):
62 os.remove(dfn)
63 # Issue 18940: A file may not have been created if delay is True.
64 if os.path.exists(self.baseFilename):
65 os.rename(self.baseFilename, dfn)
66 if not self.delay:
67 self.stream = self._open()
68
69 def shouldRollover(self, record):
70 if self.stream is None: # delay was set...

Callers

nothing calls this directly

Calls 3

removeMethod · 0.80
closeMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected