Python logging日志库空间不足问题解决


Posted in Python onSeptember 14, 2020

项目中使用的日志库是使用python官方库logging封装的,但是居然一直么有设置日志自动滚动,经常会受到告警说哪台机器磁盘空间又满,清理一下,于是研究一下,解决这个问题。

参考:https://docs.python.org/2/library/logging.handlers.html

TimedRotatingFileHandler有三个参数很关键

when、interval、backupCount

when指定滚动依据的单位,可选的有天、小时、分钟、秒等;interval指定间隔多少个when之后滚动日志;而backupCount指定最多保留多少个日志。

所以结合这三个参数就可以实现我要的目的了,让日志随时间滚动,同时限制总的日志个数。

Python logging日志库空间不足问题解决

demo:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
import os
import time
import logging
import logging.handlers

if __name__ == '__main__':
  if len(sys.argv) != 2:
    print('Usage:%s log_name' % (sys.argv[0]))
    sys.exit(0)

  log_dir = './log'
  log_name = sys.argv[1]
  logger = logging.getLogger(log_name)
  logger.setLevel(logging.DEBUG)

  # init handler
  formatter = logging.Formatter('%(message)s')
  file_time_handler = logging.handlers.TimedRotatingFileHandler(
      os.path.join(log_dir, log_name), "M", 1, 5)
  file_time_handler.setFormatter(formatter)
  file_time_handler.setLevel(logging.DEBUG)
  logger.addHandler(file_time_handler)

  while True:
    time.sleep(1)
    logger.info('Hello world %s' % (time.strftime("%Y/%M/%d-%H:%m:%S")))

结果:

Python logging日志库空间不足问题解决

可以看到最上面的一条记录记录就被滚掉了。

666

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中实现定制类的特殊方法总结
Sep 28 Python
Python操作Excel之xlsx文件
Mar 24 Python
python通过opencv实现批量剪切图片
Nov 13 Python
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现
Jun 11 Python
神经网络相关之基础概念的讲解
Dec 29 Python
正确理解Python中if __name__ == '__main__'
Jan 24 Python
Django框架model模型对象验证实现方法分析
Oct 02 Python
python函数声明和调用定义及原理详解
Dec 02 Python
Python的赋值、深拷贝与浅拷贝的区别详解
Feb 12 Python
Python 读取WAV音频文件 画频谱的实例
Mar 14 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
Jul 18 Python
python 如何使用find和find_all爬虫、找文本的实现
Oct 16 Python
Python grpc超时机制代码示例
Sep 14 #Python
python/golang 删除链表中的元素
Sep 14 #Python
Python基于pillow库实现生成图片水印
Sep 14 #Python
python/golang实现循环链表的示例代码
Sep 14 #Python
python实现canny边缘检测
Sep 14 #Python
Python gevent协程切换实现详解
Sep 14 #Python
通过实例了解python__slots__使用方法
Sep 14 #Python
You might like
如何隐藏你的.php文件
2007/01/04 PHP
探讨php中遍历二维数组的几种方法详解
2013/06/08 PHP
PHP Opcache安装和配置方法介绍
2015/05/28 PHP
PHP页面输出搜索后跳转下一页的处理方法
2016/09/30 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
php简单构造json多维数组的方法示例
2017/06/08 PHP
strpos() 函数判断字符串中是否包含某字符串的方法
2019/01/16 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
ECMA5数组的新增方法有哪些及forEach()模仿实现
2015/11/03 Javascript
js实现文字闪烁特效的方法
2015/12/17 Javascript
原生JavaScript实现AJAX、JSONP
2017/02/07 Javascript
nodejs 子进程正确的打开方式
2017/07/03 NodeJs
浅谈Koa2框架利用CORS完成跨域ajax请求
2018/03/06 Javascript
javaScript产生随机数的用法小结
2018/04/21 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
JS中的算法与数据结构之二叉查找树(Binary Sort Tree)实例详解
2019/08/16 Javascript
对vuex中store和$store的区别说明
2020/07/24 Javascript
js实现删除json中指定的元素
2020/09/22 Javascript
Python类属性与实例属性用法分析
2015/05/09 Python
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
Python xlwt设置excel单元格字体及格式
2020/04/18 Python
Python3之简单搭建自带服务器的实例讲解
2018/06/04 Python
Python实例方法、类方法、静态方法的区别与作用详解
2019/03/25 Python
python操作日志的封装方法(两种方法)
2019/05/23 Python
基于Python的图像数据增强Data Augmentation解析
2019/08/13 Python
python 使用OpenCV进行简单的人像分割与合成
2021/02/02 Python
IE9对HTML5中部分属性不支持的原因分析
2014/10/15 HTML / CSS
澳大利亚家用电器在线商店:Billy Guyatts
2020/05/05 全球购物
Kendra Scott官网:美国领先的时尚配饰品牌
2020/10/22 全球购物
行政人事经理职位说明书
2014/03/05 职场文书
村庄绿化方案
2014/05/07 职场文书
小学“向国旗敬礼”网上签名寄语活动总结
2014/09/27 职场文书
个人专业技术总结
2015/03/05 职场文书
党支部综合考察意见
2015/06/01 职场文书
七一表彰大会简报
2015/07/20 职场文书
Python中re模块的元字符使用小结
2022/04/07 Python