zoukankan      html  css  js  c++  java
  • python习题:生成日志文件

    import logging

    from logging import handlers
    class Logger(object):
        level_relations = {
            'debug':logging.DEBUG,
            'info':logging.INFO,
            'warning':logging.WARN,
            'error':logging.ERROR,
            'crit':logging.CRITICAL
        }#日志级别关系映射
        def __init__(self,fp,level='debug',when='midnight',interval=1,backCount=5,encoding='utf-8'):
            '''
     
            :param fp:日志文件路径
            :param level: 日志级别 默认是debug
            :param when: 分割日志的单位 S 秒、M 分、 H 小时、 D 天、 W 每星期(interval==0时代表星期一)、midnight 每天凌晨
            :param interval: 时间间隔 默认每天凌晨
            :param backCount: 备份文件个数 默认5个
            :param encoding: 日志文件编码
            '''
            self.level = self.level_relations.get(level)
            self.logger = logging.getLogger(fp)
            self.logger.setLevel(self.level)
            fmt = logging.Formatter('%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s')
            sh = logging.StreamHandler()
            sh.setFormatter(fmt)
            sh.setLevel(self.level)
            th = handlers.TimedRotatingFileHandler(fp,when=when,interval=interval,backupCount=backCount,encoding=encoding)
            th.setFormatter(fmt)
            th.setLevel(self.level)
            self.logger.addHandler(th)
            self.logger.addHandler(sh)
        def debug(self,msg):
            self.logger.debug(msg)
        def info(self,msg):
            self.logger.info(msg)
        def warning(self,msg):
            self.logger.warning(msg)
        def error(self,msg):
            self.logger.error(msg)
        def crit(self,msg):
            self.logger.critical(msg)
    if __name__ == '__main__':
        l = Logger('a.log')#实例化
        l.info('hehehe')#调用
  • 相关阅读:
    grunt学习(二)——安装grunt及其插件
    grunt学习(一)——nodejs入门
    18个常用的网站性能测试工具
    JSTL(fn函数)
    为MySQL选择合适的备份方式
    Web开发者文档和手册
    为Ruby On Rails开发者准备的5款IDE
    量子统计
    【日常训练】【ACM】2019-10-27_ccpc2019秦皇岛
    poj 2686 Traveling by Stagecoach
  • 原文地址:https://www.cnblogs.com/blackbird0423/p/8488120.html
Copyright © 2011-2022 走看看