zoukankan      html  css  js  c++  java
  • 最好用的Python日志模块nb_log

    一、nb_log介绍

    • 最好用的日志记录模块
    • nb_log记录日志的时候,不会日志重复打印
    • 此日志模块由这位大佬开发的https://www.cnblogs.com/ydf0509

    二、功能介绍

    2.1 自动转换print效果

    再也不怕有人在项目中随意print,导致很难找到是从哪里冒出来的print。
    只要import nb_log,项目所有地方的print自动现型并在控制台可点击几精确跳转到print的地方。

    2.2 兼容性

    使用的是python的内置logging封装的,返回的logger对象的类型是py官方内置日志的Logger类型,兼容性强,
    保证了第三方各种handlers扩展数量多和方便,和一键切换现有项目的日志。

    2.3 日志记录到多个地方

    内置了一键入参,每个参数是独立开关,可以把日志同时记录到8个常用的地方的任意几种组合,
    包括控制台、文件、钉钉 、邮件、mongo、kafka、es 等等

    三、nb_log安装

    pip install nb_log

    四、使用演示

    4.1 nb_log基础使用演示

    from nb_log import LogManager
    
    logger = LogManager('log_demo').get_logger_and_add_handlers()
    print('haha ')
    logger.info('你好')
    logger.warning('警告')
    logger.error('这是错误日志')

    执行以上代码,在项目根目录下会生成nb_log_config.py日志配置文件,进入文件中,按照如下图设置。

    再次执行代码,即可看到如下图所示的漂亮简洁的日志。

    4.2 nb_log打印日志到文件

    在之前基础代码的get_logger_and_add_handlers()方法中加上log_filename参数即可打印到日志文件。

    from nb_log import LogManager
    
    logger = LogManager('log_demo').get_logger_and_add_handlers(log_filename='APITest.log')
    print('haha ')
    logger.info('你好')
    logger.warning('警告')
    logger.error('这是错误日志')
  • 相关阅读:
    Django关于StreamingHttpResponse与FileResponse响应文件或视频的下载请求
    APScheduler可能遇到的问题
    django中model聚合使用
    Java 递归判断迷宫问题是否有路
    direct path read/write (直接路径读/写)
    DRM 简介
    SQL Server2008表名中含“.”号处理方法
    Java学习之:JDK动态代理与CGLIB动态代理
    强大易用!新一代爬虫利器 Playwright
    为什么cudaMalloc()参数是二级指针
  • 原文地址:https://www.cnblogs.com/lvhuayan/p/15256833.html
Copyright © 2011-2022 走看看