一款超好用的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
logger.add(sys.stderr,format="{time} {level} {message}", filter="filter_message",level="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配置
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配置(配置日志最长保留时间)
logger.add('logTest_{time}.log', retention='7 days')
2.5 compression 配置(配置日志文件为压缩格式)
logger.add('logTest_{time}.log', compression='zip')
3. 示例
3.1 代码示例:
from loguru import logger
import sys
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(使用前将#替换为@)