• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Python 第三方日志框架loguru使用

    解决中文乱码问题

    项目地址 github: https://github.com/Delgan/loguru
    文档:https://loguru.readthedocs.io/en/stable/index.html

    安装

    pip install loguru

    1、输出日志

    from loguru import logger
    logger.debug("这是一条debug日志")

    终端执行后出现带颜色的日志,挺酷的

    2、输出到文件

    from loguru import logger
    
    logger.add("file_{time}.log")
    
    logger.debug("这是一条debug日志")
    logger.info("这是一条info日志")

    目录下多出一个日志文件 :file_2019-03-14_19-53-25_661314.log

    3、日志规则

    设置日志格式,过滤器,日志级别

    from loguru import logger
    
    logger.add("file.log", format="{time} {level} {message}", filter="", level="INFO")
    
    logger.debug("这是一条debug日志")
    logger.info("这是一条info日志")

    输出

    2019-03-14T20:01:25.392454+0800 INFO 这是一条info日志

    4、日志文件

    文件管理方式

    logger.add("file_1.log", rotation="500 MB")    # 文件过大就会重新生成一个文件
    logger.add("file_2.log", rotation="12:00")     # 每天12点创建新文件
    logger.add("file_3.log", rotation="1 week")    # 文件时间过长就会创建新文件
    
    logger.add("file_X.log", retention="10 days")  # 一段时间后会清空
    
    logger.add("file_Y.log", compression="zip")    # 保存zip格式

    5、其他参数

    logger.add("somefile.log", enqueue=True)  # 异步写入
    
    logger.add("somefile.log", serialize=True)  # 序列化为json

    6、时间格式化

    logger.add("file.log", format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}")

    配合notifiers模块
    github: https://github.com/notifiers/notifiers
    文档:https://notifiers.readthedocs.io/en/latest/

    7、在工程中创建多个文件处理器对象并解决中文乱码问题

    # coding=utf-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("严重错误")

    以上就是Python 第三方日志框架loguru使用的详细内容,更多关于Python 日志框架loguru的资料请关注脚本之家其它相关文章!

    您可能感兴趣的文章:
    • python实现自定义日志的具体方法
    • python和websocket构建实时日志跟踪器的步骤
    • 解决python logging遇到的坑 日志重复打印问题
    • python 实现多进程日志轮转ConcurrentLogHandler
    • python 实现logging动态变更输出日志文件名
    • python (logging) 日志按日期、大小回滚的操作
    • 详解python日志输出使用配置文件格式
    • python基于pexpect库自动获取日志信息
    • Python日志打印里logging.getLogger源码分析详解
    • python subprocess pipe 实时输出日志的操作
    • Python中logging日志的四个等级和使用
    • 如何在Python项目中引入日志
    上一篇:一篇教程教你学会Python进制转换(十进制转二进制、八进制、十六进制)
    下一篇:PyTorch平方根报错的处理方案
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Python 第三方日志框架loguru使用 Python,第三方,日志,框架,