コード例 #1
0
    def __addCustomFormatter(self, ch):
        """
        add ColorFormatter with custom colors for each log level

        Args:
            None

        Returns
            None
        """

        fmt = ("[%(asctime)s] "
               "[%(log_color)s%(levelname)s%(reset)s] "
               "[%(name)s%(message)s")

        formatter = ColoredFormatter(
            fmt,
            datefmt="%Y-%m-%d %H:%M:%S",
            reset=True,
            log_colors={
                "DEBUG": "purple",
                "INFO": "green",
                "WARNING": "yellow",
                "ERROR": "red",
                "CRITICAL": "red",
            },
        )
        formatter.converter = time.gmtime

        # add formatter to console handler
        ch.setFormatter(formatter)
コード例 #2
0
    def __setLogger():

        print("\n\n\n------------------------------------------------------New Session--------------------------------------------------\n\n\n")
        mainlogger = logging.getLogger()
        
        logFormatterforConsole = ColoredFormatter(
        '%(log_color)s%(levelname)-8s %(black)s%(bg_cyan)s%(asctime)s%(reset)s %(purple)s%(threadName)-14s %(black)s%(bg_cyan)s%(funcName)s in %(module)s:%(lineno)d%(reset)s\n %(log_color)s%(message)s',
        datefmt=None,
        reset=True,
        log_colors={
            'DEBUG':    'cyan',
            'INFO':     'green',
            'WARNING':  'yellow',
            'ERROR':    'red',
            'CRITICAL': 'red,bg_white',
        },
        secondary_log_colors={},
        style='%'
    )
        logFormatterforConsole.converter = customTime
        consoleHandler = logging.StreamHandler(sys.stdout)
        consoleHandler.setFormatter(logFormatterforConsole)
        mainlogger.addHandler(consoleHandler)

        if not isdir("../logs"):
            makedirs("../logs")
        logFormatterforFile=logging.Formatter('%(levelname)-8s %(asctime)s %(threadName)-14s %(funcName)s in %(module)s:%(lineno)d\n %(message)s')    
        logFormatterforFile.converter = customTime
        fileHandler = logging.FileHandler("{0}/{1}.logging".format("../logs", "log"))
        fileHandler.setFormatter(logFormatterforFile)
        mainlogger.addHandler(fileHandler)
        
        sys.stdout = StreamToLogger(mainlogger, logging.INFO)
        sys.stderr = WarnStreamToLogger(mainlogger, logging.WARN)        

        err=partial(errHandler, mainlogger)   
        sys.excepthook = err

        mainlogger.setLevel(logging.INFO)
        Logger.log=mainlogger