• python自定义logger handler


    _filefmt=os.path.join("logs","%Y-%m-%d.log")
    class MyLoggerHandler(logging.Handler):
        def __init__(self,filefmt=None):
            self.filefmt=filefmt
            if filefmt is None:
                self.filefmt=_filefmt
            logging.Handler.__init__(self)
        def emit(self,record):
            msg=self.format(record)
            _filePath=datetime.datetime.now().strftime(self.filefmt)
            _dir=os.path.dirname(_filePath)
            try:
                if os.path.exists(_dir) is False:
                    os.makedirs(_dir)
            except Exception:
                print("can not make dirs")
                print("filepath is "+_filePath)
                pass
            try:
                _fobj=open(_filePath,'a') 
                _fobj.write(msg)
                _fobj.write("
    ")
                _fobj.flush()
                _fobj.close()
            except Exception:
                print("can not write to file")
                print("filepath is "+_filePath)
                pass
    if __name__ == '__main__':
        logging.basicConfig()
        logger = logging.getLogger("logger")
        logger.setLevel(logging.INFO)
        filehandler = MyLoggerHandler()
        logger.addHandler(filehandler)
        logger.info('log...')
  • 相关阅读:
    集群资源队列监控:Grafana
    1
    3月9号
    jmx
    日常笔记
    nsenter命令简介
    一天2小时
    postgresql Centos7部署
    笔记5
    1
  • 原文地址:https://www.cnblogs.com/ExMan/p/11284276.html
Copyright © 2020-2023  润新知