zoukankan      html  css  js  c++  java
  • python 日志组件

    日志组件:

    import logging
    import logging.handlers
    import os
    
    
    class logs(object):
        def __init__(self):
            self.logger = logging.getLogger("")
            # 设置输出的等级
            LEVELS = {'NOSET': logging.NOTSET,
                      'DEBUG': logging.DEBUG,
                      'INFO': logging.INFO,
                      'WARNING': logging.WARNING,
                      'ERROR': logging.ERROR,
                      'CRITICAL': logging.CRITICAL}
            # 创建文件目录
            logs_dir = "logs"
            if os.path.exists(logs_dir) and os.path.isdir(logs_dir):
                pass
            else:
                os.mkdir(logs_dir)
            # 修改log保存位置
            logfilename = 'ind.log'
            logfilepath = os.path.join(logs_dir, logfilename)
            rotatingFileHandler = logging.handlers.TimedRotatingFileHandler(filename=logfilepath,
                                                                       when="D",
                                                                       interval=1)
            # 设置输出格式
            formatter = logging.Formatter('[%(asctime)s] [%(levelname)s] %(message)s', '%Y-%m-%d %H:%M:%S')
            rotatingFileHandler.setFormatter(formatter)
            # 控制台句柄
            console = logging.StreamHandler()
            console.setLevel(logging.NOTSET)
            console.setFormatter(formatter)
            # 添加内容到日志句柄中
            self.logger.addHandler(rotatingFileHandler)
            self.logger.addHandler(console)
            self.logger.setLevel(logging.NOTSET)
    
        def info(self, message):
            self.logger.info(message)
    
        def debug(self, message):
            self.logger.debug(message)
    
        def warning(self, message):
            self.logger.warning(message)
    
        def error(self, message):
            self.logger.error(message)
    

      

    import logging

    logger = logging.getLogger(__name__)

    log = logs()
  • 相关阅读:
    BZOJ2741:[FOTILE模拟赛]L
    BZOJ3996:[TJOI2015]线性代数
    BZOJ3876:[AHOI2014]支线剧情
    BZOJ1861:[ZJOI2006]Book书架
    BZOJ3190:[JLOI2013]赛车
    HDU-1540 Tunnel Warfare 【线段树+单点修改+区间更新】
    HDU-1846 Brave Game 【巴什博弈】
    HDU-1421 搬寝室 【DP】
    HDU-4734 F(x) 【数位DP】
    AHU-412 Bessie Come Home 【Dijkstra】
  • 原文地址:https://www.cnblogs.com/tianboblog/p/12002465.html
Copyright © 2011-2022 走看看