python 日志不会按照日期分割_Python logging 按日期分割不成功?

作者实现了一个每10分钟检查CPU占用率的服务,并使用Python logging模块记录日志。按天分割日志时出现错误,日志始终记录在前一天的文件中。已验证按分钟分割正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

是这样的,我前几天写了一个服务,这个服务每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的日志中。

我一度怀疑自己写法有问题,但是我切换了按分钟分割日志就分割成功了,按天数就有问题,请问有谁也遇到过这样的情况么?如何处理?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值