zoukankan      html  css  js  c++  java
  • python单例模式-logging日志

    单例模式:

    不管实例化对象多少次,都只返回第一次实例化的对象空间。

    单例的目的是:

    为了节省开辟对象空间及销毁对象空间的时间。

    单例日志的写法:

    import logging
    
    log_path
    = r'D:log .txt'
    # 单例模式 class Log(object):
    __flag = None
    def __new__(cls, *args, **kwargs): if not cls.__flag: cls.__flag = super().__new__(cls) return cls.__flag def __init__(self): if 'logger' not in self.__dict__: logger = logging.getLogger() logger.setLevel(level=logging.DEBUG) filehandle = logging.FileHandler(log_path,encoding='utf-8') streamhandle = logging.StreamHandler() logger.addHandler(filehandle) logger.addHandler(streamhandle) format = logging.Formatter('%(asctime)s:%(levelname)s:%(lineno)s %(message)s') filehandle.setFormatter(format) streamhandle.setFormatter(format)
    self.logger
    = logger def return_logger(self): return self.logger def get_logger(): return Log().return_logger() if __name__ == '__main__': logger = get_logger() logger.debug('zezhou')

     注:文件不需要单独去判断创建文件,没有会自动创建

  • 相关阅读:
    jsp九大内置对象和4个域对象
    小甜点
    response编码
    request请求编码处理
    防盗链模拟
    request浏览器判断
    request获取ip
    ServletConfig
    HttpServlet原理
    Servlet,GenericServlet,httpServlet区别
  • 原文地址:https://www.cnblogs.com/zezhou/p/10852665.html
Copyright © 2011-2022 走看看