from loguru import loggerlogger.add( sink=logs/info.log, level=INFO, # 日志级别 ...
from loguru import logger
logger.add(
sink="logs/info.log",
level="INFO", # 日志级别
format="{time} {function} : {message}",
rotation="1 GB", # 滚动记录日志文件 日志大小
retention="10 days", # 指定日志保留时长
compression="zip", # 配置文件压缩格式
encoding='utf-8', # 解决中文乱码
# serialize=True, # 结构化日志
enqueue=True, # 默认线程安全 指定异步和多进程安全
backtrace=True,
diagnose=True
)
在使用python的时候方便且高效地管理输出到控制台的信息,如通过一处的设置,屏蔽掉所有的debug信息,只留下正常的info信息,不需要重复地将所有地方的debug信息都手动删除,并指定级别只记录相应级别日志到文件中
from loguru import logger
logger.info("info")
logger.warning("warning")
logger.debug("debug")
1
2
3
4
5
对语句如上,输出是这样的:
简单,漂亮
二、这一篇要讲的具体是:
在使用loguru的时候,能够实现对输出到控制台的日志级别的控制
比如,设置为INFO级别的时候,DEBUG级别的日志将不再输出,控制台上将屏蔽掉写下的logger.debug(“debug”)信息,对于上面的代码,在配置后输出就变成了
而配置的代码也很简单
import sys
logger.remove()#删去import logger之后自动产生的handler,不删除的话会出现重复输出的现象
handler_id = logger.add(sys.stderr, level="INFO")#添加一个可以修改控制的handler
1
2
3
4
将语句放在程序开头或者import之后,修改级别的时候修改“INFO”为“DEBUG”或者相应的级别即可,
这样,输出到控制台的日志级别就修改好了,而输出到文件的日志级别控制网上有很多,这里同样不再赘述
一周热门 更多>