1.安装
pip install loguru
2.输出日志
from loguru inport logger
logger.debug('这是一条debug日志')
3.输出到文件
from loguru import logger
logger.add('file_{time}.log')
logger.debug('这是一条debug日志')
logger.info('这是一条info日志')
4.日志规则
设置日志格式,过滤器,日志级别
from loguru import logger
logger.add('file.log', format='{time}{level}{message}', filter='', level='INFO')
logger.debug('这是一条debug日志')
logger.info('这是一条info日志')
5.日志文件
文件管理方式
logger.add('file_1.log', rotation='500MB') # 文件过大就回重新生成一个文件
logger.add('file_2.log', rotation='12:00') # 每天12点创建文件
logger.add('file_3.log', rotation='1 week') # 文件时间过长就会创建新文件
logger.add('file_X.log', rotation='10 days') # 一段时间后会清空
logger.add('file_Y.log', compression='zip') # 保存zip格式
6.其他参数
logger.add('somefile.log', enqueue=True) # 异步写入
logger.add('somefile.log', serialize=True) # 序列化为json
7.时间格式化
logger.add('file.log', format='{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}')
8.在工程中创建多个文件处理器对象并解决中文乱码问题
import os
import sys
from loguru import logger
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
log_file_path = os.path.join(BASE_DIR, 'Log/my.log')
err_log_file_path = os.path.join(BASE_DIR, 'Log/err.log')
logger.add(sys.stderr, format="{time} {level} {message}", filter="my_module", level="INFO")
# logger.add(s)
logger.add(log_file_path, rotation="500 MB", encoding='utf-8') # Automatically rotate too big file
logger.add(err_log_file_path, rotation="500 MB", encoding='utf-8', level='ERROR') # Automatically rotate too big file
logger.debug("That's it, beautiful and simple logging!")
logger.debug("中文日志可以不")
logger.error("严重错误")