python+loguru控制信息输出到控制台的日志级别

一、需求描述:

在使用python的时候方便且高效地管理输出到控制台的信息,如通过一处的设置,屏蔽掉所有的debug信息,只留下正常的info信息,不需要重复地将所有地方的debug信息都手动删除

关于loguru,此处不再赘述,网上被转载地很多的那些文章将特性讲得比较清楚了,再复制一遍太污染环境了,简单来说就是一个方便(且好看)的控制台+文件的日志输出包

from loguru import logger
logger.info("info")
logger.warning("warning")
logger.debug("debug")

对语句如上,输出是这样的:
在这里插入图片描述

简单,漂亮

二、这一篇要讲的具体是:

在使用loguru的时候,能够实现对输出到控制台的日志级别的控制
python+loguru控制信息输出到控制台的日志级别_第1张图片

比如,设置为INFO级别的时候,DEBUG级别的日志将不再输出,控制台上将屏蔽掉写下的logger.debug(“debug”)信息,对于上面的代码,在配置后输出就变成了

在这里插入图片描述

而配置的代码也很简单

import sys
logger.remove()#删去import logger之后自动产生的handler,不删除的话会出现重复输出的现象
handler_id = logger.add(sys.stderr, level="INFO")#添加一个可以修改控制的handler

将语句放在程序开头或者import之后,修改级别的时候修改“INFO”为“DEBUG”或者相应的级别即可,
这样,输出到控制台的日志级别就修改好了,而输出到文件的日志级别控制网上有很多,这里同样不再赘述

参考资料:
1.Changing the level of an existing handler:https://loguru.readthedocs.io/en/stable/resources/recipes.html

你可能感兴趣的:(python)