一款超好用的python的log记录工具——loguru

2023-05-16

一款超好用的python的log记录工具——loguru

1. 安装

pip install loguru

2. 使用简介

2.1 add()函数

在loguru中,只需要通过一个add()函数即可设置Handler,设置Formatter,Filter Message,rotation,retention以及设置Level等配置项。
示例:

from loguru import logger
import sys

# 过滤出含有“filter_message”的error信心输出到系统命令行
logger.add(sys.stderr,format="{time} {level} {message}", filter="filter_message",level="ERROR")
 
# 过滤出含有“filter_message”的error信心输出到文件
logger.add("./test.log",format="{time} {level} {message}", filter="filter_message", level="ERROR")   # 输出到文件
2.2 format设置日志输出格式

format支持的配置参数如下:

class Record(TypedDict):
    elapsed: timedelta
    exception: Optional[RecordException]
    extra: Dict[Any, Any]
    file: RecordFile
    function: str
    level: RecordLevel
    line: int
    message: str
    module: str
    name: Union[str, None]
    process: RecordProcess
    thread: RecordThread
    time: datetime

代码实例如下:

from loguru import logger
import sys

logger.add(sys.stderr,format="{time:YYYY-MM-DD HH:mm:ss} | {level} | {file}:{line} | {message}",level="INFO")
2.3 roation配置
# 根据配置文件的大小为500MB,超过会自动生成一个新日志文件
logger.add('logTest_{time}.log', rotation="500 MB") 
# 设置每天零点创建一个日志文件
logger.add('logTest_{time}.log', rotation='00:00')  
# 设置每隔一周创建一个日志文件  
logger.add('logTest_{time}.log', rotation='1 week')
2.4 retention配置(配置日志最长保留时间)
# 配置日志文件最长保留时间为7天
logger.add('logTest_{time}.log', retention='7 days')  
2.5 compression 配置(配置日志文件为压缩格式)
# 设置文件格式压缩为zip,节省空间
logger.add('logTest_{time}.log', compression='zip')

3. 示例

3.1 代码示例:
from loguru import logger
import sys

#logger.add(sys.stderr,format="{time} {level} {message}", level="ERROR")   # 输出到系统命令行
#logger.add("./test.log",format="{time} {level} {message}", level="ERROR")   # 输出到文件
logger.add("./test.log", level="ERROR")

def test():
    for i in range(5):
        logger.debug('message is %s'%i)
        logger.info('message is %s'%i)
        logger.warning('message is %s'%i)
        logger.error('message is %s'%i)
test()
3.2 输出结果为:

在这里插入图片描述

3.3 在test.log中的结果(由于设置了日志输出级别ERROR):

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一款超好用的python的log记录工具——loguru 的相关文章

随机推荐