模块简介

  • 官方文档:https://logbook.readthedocs.io/en/stable/index.html
  • PyPi地址:https://pypi.org/project/Logbook/
  • Github地址:https://github.com/getlogbook/logbook

安装模块

pip install logbook

代码封装

目前仅封装了文件日志输出和控制台日志输出,可以自定义打印格式。

代码

from pathlib2 import Path
import logbook
from logbook import Logger, TimedRotatingFileHandler
from logbook.more import ColorizedStderrHandlerclass Log(object):format_string = "[{record.time}] [{record.level_name} : {record.channel}]  {record.message}"def __init__(self, name="Logging", file_path=None):self.name = nameself._file_path = file_pathself.logger = None@propertydef file_handler(self):self._file_path = Path(self._file_path)if "." not in self._file_path.name:self._file_path = self._file_path.joinpath("Log.log")self._file_path.parent.mkdir(exist_ok=True)_log = TimedRotatingFileHandler(str(self._file_path), date_format='%Y-%m-%d', bubble=True, encoding='utf-8')_log.format_string = self.format_stringreturn _log@file_handler.setterdef file_handler(self, file_path):self._file_path = file_path@propertydef std_handler(self):_log = ColorizedStderrHandler(bubble=True)_log.format_string = self.format_stringreturn _logdef init(self):logbook.set_datetime_format("local")self.logger = Logger(self.name)self.logger.handlers = []self.logger.handlers.append(self.std_handler)if self._file_path is not None:self.logger.handlers.append(self.file_handler)def __getattr__(self, item):return getattr(self.logger, item)if __name__ == '__main__':log = Log(name="OMG", file_path="Log/abc.log")log.init()for i in range(100):log.info(f"当前为第{i}论")

输出结果

[2019-09-04 11:16:11.281424] [INFO : OMG]  当前为第0论
[2019-09-04 11:16:11.281618] [INFO : OMG]  当前为第1论
[2019-09-04 11:16:11.281695] [INFO : OMG]  当前为第2论
[2019-09-04 11:16:11.281760] [INFO : OMG]  当前为第3论
[2019-09-04 11:16:11.281820] [INFO : OMG]  当前为第4论
[2019-09-04 11:16:11.281877] [INFO : OMG]  当前为第5论
[2019-09-04 11:16:11.281933] [INFO : OMG]  当前为第6论
[2019-09-04 11:16:11.281988] [INFO : OMG]  当前为第7论
[2019-09-04 11:16:11.282043] [INFO : OMG]  当前为第8论
[2019-09-04 11:16:11.282098] [INFO : OMG]  当前为第9论

功能说明

1. TimedRotatingFileHandler

  • 该程序会根据自定义名称当前日期,组合成为文件名。
  • 例如:filename='/var/log/foo.log',date_format='%Y-%m-%d' ,那么其文件名为/var/log/foo-2010-01-10.log

2. ColorizedStderrHandler

  • 会在输出给终端的日志信息中,显示颜色;Windows貌似无效。

Logbook模块:logging的高级封装版相关推荐

  1. Python日志模块logging高级用法

    推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,2021年12月第11次印刷,山东省一流 ...

  2. ES系统封装教程 高级进阶版 提供Wind7,xp系统下载 (by 星空武哥)

     重新改了一下,由于一些地址链接有问题,现在所有下载软件都已经没问题了. 欢迎访问我的博客http://blog.csdn.net/lsyz0021 ES系统封装教程 高级进阶版,提供我自己封装的Wi ...

  3. 微信小程序连接蓝牙模块发送数据的详解以及封装版

    连接蓝牙 前言 详解 小程序链接蓝牙流程图 需要的数据 api openBluetoothAdapter:打开蓝牙适配器 getBluetoothAdapterState:查看蓝牙适配器状态 star ...

  4. 项目开发一般流程、入职流程、尚学堂OA项目01_基础环境搭建、人事管理模块搭建、Servlet的高级封装

    项目开发一般流程.入职流程.尚学堂OA项目01 1. 项目开发的一般流程 2. 入职时工作的一般流程 3. 尚学堂办公自动化系统/OA 3.1 项目介绍 3.2 项目资料 3.3 项目开发 3.3.1 ...

  5. 日志模块-logging模块

    日志模块 -logging(非常重要) 记录用户行为 程序运行过程 程序错误记录 logging.debug()通常调试时用到的日志信息 logging.info() #证明事情按照预期的那样工作 l ...

  6. MDIEMDIE双心封装版0.3.0.0RC6V2

    MDIEMDIE双心封装版0.3.0.0 RC6V2 官方主页:http://cres.s28.xrea.com/ MDIE(多文档界面资源管理器)是一个MDI类型的文件管理软件,是代替资源管理器的一 ...

  7. 主动学习之Alipy包使用 (一):高级封装

    Alipy包使用详解 引入 0.1 主动学习简介 0.2 主动学习示例 0.3 查询策略及评价 0.4 Alipy概述 1 高级封装 1.1 ToolBox 1.1.1 初始化ToolBox对象: 1 ...

  8. python-27-日志模块logging的应用

    参考python日志模块的使用 参考Python之日志处理(logging模块) 参考python标准日志模块logging及日志系统设计 Python + logging 日志和日志文件(一天一个日 ...

  9. python logging模块默认日志级别_Python 日志模块logging

    logging模块: logging是一个日志记录模块,可以记录我们日常的操作. logging日志文件写入默认是gbk编码格式的,所以在查看时需要使用gbk的解码方式打开. logging日志等级: ...

最新文章

  1. 成功解决没有tf.nn.rnn_cell属性
  2. HTML5 拖拽的简单实践
  3. C++ 11 深度学习(一)auto、头文件防卫、引用、常量
  4. C++primer第十章 泛型算法 10.3 定制操作
  5. mysql初级数据库_MYSQL初级数据库操作
  6. LaTeX:Texlive 2019和TeX studio
  7. 初赛复习的一些零碎链接
  8. python求100被3he7整除_PYTHON练习题测验
  9. 【软件开发规范五】《用户需求及规格说明书》
  10. 从零开始的数模学习(5):TOPSIS法(评价类模型)
  11. Excel 如何让单元格内容不完全显示
  12. 起底白帽黑客郭盛华读过的学校,看完流眼泪了!
  13. 上兴远控流量分析报告
  14. python八卦阴阳_GitHub - meetingFuture/godwill: 周易八卦,占一卦,知来世,肖今生。...
  15. Windows10搭建EDK2环境
  16. 《多媒体技术基础》辅导
  17. 照片怎样变漫画图片?建议收藏这些方法
  18. QM的计算机专业,PCM5-QM170
  19. 旧电脑 存储服务器 系统,爷爷级PC,用白菜价内存搭建内存硬盘操作系统,老系统飞起来。...
  20. Tomcat下载和安装

热门文章

  1. GAMES104-渲染中光和材质的数学魔法
  2. HMI流水灯运行(xctf)
  3. PowerDesigner数据库设计与建模。数据库中设计一对一、一对多、多对多、依赖关系、继承关系。
  4. 高项 21 信息安全管理
  5. 新的起点,新的征程。
  6. itk registration 13
  7. 【支付】一文读懂支付清算
  8. 人工智能快速发展的核心要素,大数据、算法和超级计算的介绍
  9. 【WebRtc0419项目经验总结】
  10. 英语写作替换词与上下文连接词