Python日志控制台输出 周期文件输出

基于上节说到,爬虫经常会用到的两个包,一个是抓取包SpiderTool,二是日志包loggingtool,今天主要分享Python经常会用到的日志包loggingtool。
说明:
loggingtool包是基于logging模块的dictConfig进行的封装,目前主要封装有3类:控制台输出console,文件大小输出filebytes,文件时间输出filetime。使用者可以根据需要选择,例如测试阶段可以用console模式输出,测试完毕后,正式上线则可以选择文件大小周期循环输出,这样避免了日志文件越积越多,占磁盘空间。

console:

from loggingtool import loggingtool

logger = loggingtool.init_log("test", "console", level="DEBUG")

logger.warn("this is a warn")

结果:

2018-11-25 12:01:28,828 - test - WARNING -* 1520| this is a warn

文件大小:

logging = init_log("test", "filebytes", level="DEBUG", maxBytes=1, backupCount=5,
                       filename="./log/test_file.log")
logging.warn("dasdas")
logging.error("dadasda")
logging.warn("dasdas")
logging.warn("dasdas")
logging.error("dadasda")

输出的文件结构:
Python日志控制台输出 周期文件输出_第1张图片

文件时间:

 logging = init_log("test", "filetime", level="DEBUG", when="s", backupCount=5,
                       filename="./log/test_file.log")
 logging.warn("dasdas")
 logging.error("dadasda")
 logging.warn("dasdas")
 logging.warn("dasdas")

文件输出结构:
Python日志控制台输出 周期文件输出_第2张图片

这个日志周期循环不仅适用于爬虫,对于需要长时间运行的程序都可以使用,防止物理机因为磁盘而down掉。

后续这个日志包会扩展为http日志传输等内容。

前两节主要介绍了两个包,便于使用,后续会先后介绍爬虫相关技术(登陆,参数破解,字体解密,cookie,抓包工具的使用,抓取系统,解析系统,监控系统,kafka消息队列)等。欢迎吐槽!!+qq:1050518702

你可能感兴趣的:(爬虫,日志,日志,logging,日志分割,日志回滚,周期日志)