Python logging 按日期分割不成功?

发布于 2022-09-06 21:20:25 字数 1703 浏览 54 评论 0

是这样的,我前几天写了一个服务,这个服务每10分钟去查询所有的CPU占比率超过百分之10的程序,然后输出的log中。
这是我的log.py配置

class Log(object):
      '''日志类 '''
      def __init__(self, name):
            self.path = "/var/log/infinity/custom/"  # 定义日志存放路径
            self.filename = self.path + rq + "_custom_monitor" + ".log"    # 日志文件名称
            self.name = name    # 为%(name)s赋值
            self.logger = logging.getLogger(self.name)
            # 控制日志文件中记录级别
            self.logger.setLevel(logging.INFO)
            # 控制输出到控制台日志格式、级别
            # self.ch = logging.StreamHandler()
            # 日志保留7天,一天保存一个文件
            self.fh = TimedRotatingFileHandler(self.filename, when='D', interval=1, backupCount=7)
            # 删除设置
            self.fh.suffix = '%Y-%m-%d_%H-%M.log'
            self.fh.extMatch = re.compile(r"^\d{4}-\d{2}-\d{2}_\d{2}-\d{2}.log$")
            # 定义日志文件中格式
            self.formatter = logging.Formatter('%(asctime)s - %(levelname)s -   %(name)s[line:%(lineno)d] - %(message)s')
            self.fh.setFormatter(self.formatter)
            self.logger.addHandler(self.fh)
            # self.logger.addHandler(self.ch)

      def info(self, msg):
          self.logger.info(msg)

      def warning(self, msg):
          self.logger.warning(msg)

      def error(self, msg):
          self.logger.error(msg)

      def debug(self, msg):
          self.logger.debug(msg)

      def close(self):
          self.logger.removeHandler(self.fh)

这是我的调用代码:

log.info("\n进程占用内存\n" + check_process_memory(key))

问题就来了,非常奇怪,我昨天启动的监控程序,生成了3月22号的log日志,但是,今天我检查,发现没有生成3月23号的日志程序,还是依旧记录在3月22的日志中。
我一度怀疑自己写法有问题,但是我切换了按分钟分割日志就分割成功了,按天数就有问题,请问有谁也遇到过这样的情况么?如何处理?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

青春如此纠结 2022-09-13 21:20:25

你写的没看出来问题啊,我怀疑你服务器的时间是不是没到23号,在终端执行date,我猜你服务器时间可能是utc时间?

参考这个https://www.cnblogs.com/qhlbl...
'D' 是+1天,改成when='MIDNIGHT'是你想要的效果

掐死时间 2022-09-13 21:20:25

楼主你好,我用的你的脚本在我本地运行,我是设置的分钟,我这边是分钟切换的时候创建文件失败,楼主能指教下吗

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文