zoukankan      html  css  js  c++  java
  • python logging 重复打印问题

    我的问题:

    1. 在项目中由于在做个py文件中定义了handlers,导致在项目中定义几次就会重复几次

    正确的处理办法

    1. 只在一个文件中定义内容,然后在其他的py文件中引用即可
    import os
    import logging
    from logging.handlers import TimedRotatingFileHandler
    
    BASE_DIR = os.path.dirname(os.path.abspath(__file__))
    # log file
    
    LOG_FILE = os.path.join(BASE_DIR, 'data/info.log')
    
    logger = logging.getLogger("Rotating Log")
    logger.setLevel(logging.INFO)
    
    handler = TimedRotatingFileHandler(LOG_FILE,
                                       when="D",
                                       interval=1,
                                       backupCount=5)
    logger.addHandler(handler)
    logging = logger
    

    更新:

    LOG_FILE = os.path.join(BASE_DIR, 'data/info.log')
    
    logger = logging.getLogger("Rotating Log")
    logger.setLevel(logging.INFO)
    formatter = logging.Formatter('%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
    
    handler = TimedRotatingFileHandler(LOG_FILE,
                                       when="S",
                                       interval=1,
                                       backupCount=5)
    handler.setFormatter(formatter)
    logger.addHandler(handler)
    
    
    # file_handler = logging.FileHandler(LOG_FILE)
    # file_handler.setLevel(level=logging.INFO)
    # file_handler.setFormatter(formatter)
    
    # 可以打印到控制台
    # stream_handler = logging.StreamHandler()
    # stream_handler.setLevel(logging.DEBUG)
    # stream_handler.setFormatter(formatter)
    
    # logger.addHandler(file_handler)
    # logger.addHandler(stream_handler)
    
    logging = logger
    
    
    
  • 相关阅读:
    面试题总结(vue面试题)
    面试题总结(css面试题)
    设置div居中显示
    关于js中iframe 中 location.href的用法
    js判断是否在iframe中
    npm git 常用命令行 记录
    mongDB数据库 小白学习
    EJS 入门学习
    bower 基础认识
    gulp 粗粗学习 记录下
  • 原文地址:https://www.cnblogs.com/qianxunman/p/14273569.html
Copyright © 2011-2022 走看看