def setup_logging(verbose=True, level="INFO", directory=None, filename=None, rotation_size="10MB"): """ Setup logging. """ root_logger = logging.getLogger("") for handler in root_logger.handlers: root_logger.removeHandler(handler) if verbose: handler = logging.StreamHandler(sys.stdout) handler.setLevel(parse_loglevel(level)) root_logger.addHandler(handler) if not(directory is None and filename is None): max_log_size = parse_size(rotation_size) filepath = os.path.join(directory, filename) handler = RotatingFileHandler(filepath, maxBytes=max_log_size, backupCount=5) handler.setFormatter( logging.Formatter("%(asctime)s %(levelname)s %(message)s")) root_logger.setLevel(parse_loglevel(level)) root_logger.addHandler(handler) return logging
def setup_logging(directory, filename, rotation_size, level): """ Setup rotating file logging. """ max_log_size = parse_size(rotation_size) filepath = os.path.join(directory, filename) handler = RotatingFileHandler(filepath, maxBytes=max_log_size, backupCount=3) handler.setLevel(level_map[level]) formatter = logging.Formatter("%(asctime)s %(levelname)s %(message)s") handler.setFormatter(formatter) rootlogger = logging.getLogger("") rootlogger.setLevel(level_map[level]) rootlogger.addHandler(handler)