python多进程 写日志问题
发布日期:2021-05-13 00:13:00 浏览次数:16 分类:精选文章

本文共 2921 字,大约阅读时间需要 9 分钟。

���������TimedRotatingFileHandler���������������������������������������������

PermissionError: [WinError 32] ���������������������������������������������������������

������������������������������������������������������������������������������������������������������������������������������������������������������������������Django������������������������������������������������������������������

���������������������������������������������������������������������

class SafeFileHandler(FileHandler):
def __init__(self, filename, mode="a", encoding=None, delay=0, suffix="%Y-%m-%d_%H"):
if codecs is None:
encoding = None
current_time = time.strftime(suffix, time.localtime())
FileHandler.__init__(self, filename + "." + current_time, mode, encoding, delay)
self.filename = os.fspath(filename)
self.mode = mode
self.encoding = encoding
self.suffix = suffix
self.suffix_time = current_time
def emit(self, record):
try:
if self.check_base_filename():
self.build_base_filename()
FileHandler.emit(self, record)
except(KeyboardInterrupt, SystemExit):
raise
except:
self.handleError(record)
def check_base_filename(self):
time_tuple = time.localtime()
if self.suffix_time != time.strftime(self.suffix, time_tuple):
return 1
if not os.path.exists(os.path.abspath(self.filename) + "." + self.suffix_time):
return 1
return 0
def build_base_filename(self):
if self.stream:
self.stream.close()
self.stream = None
if self.suffix_time != "":
index = self.baseFilename.find("." + self.suffix_time)
if index == -1:
index = self.baseFilename.rfind(".")
self.baseFilename = self.baseFilename[:index]
current_time_tuple = time.localtime()
self.suffix_time = time.strftime(self.suffix, current_time_tuple)
self.baseFilename = os.path.abspath(self.filename) + "." + self.suffix_time
if not self.delay:
self.stream = open(self.baseFilename, self.mode, encoding=self.encoding)

���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

  • ���������������������������������������������������������������������������������
  • ��������������������������������������������������������� threading.Lock ������������������������������������������������
  • ������������������������������������������������������������������������������������������������
  • ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������

    上一篇:22. Flatten List
    下一篇:Course Schedule II

    发表评论

    最新留言

    能坚持,总会有不一样的收获!
    [***.219.124.196]2025年04月06日 06时00分11秒