Source code for cypresspoint

# -*- coding: utf-8 -*-

"""Top-level package for Cypress Point."""

__author__ = """Lowell Alleman"""
__email__ = 'lowell@kintyre.co'
__version__ = '0.8.3'


[docs] def setup_logging(log_file, debug=False, formatter=None, when="midnight", max_size_mb=None, backup_count=10): from logging import DEBUG, INFO, Formatter, getLogger from logging.handlers import RotatingFileHandler, TimedRotatingFileHandler log = getLogger() if debug: log_level = DEBUG else: log_level = INFO log.setLevel(log_level) if max_size_mb: logfile = RotatingFileHandler(log_file, maxBytes=max_size_mb * 1048576, backupCount=backup_count, encoding='utf-8') else: logfile = TimedRotatingFileHandler(log_file, when, backupCount=backup_count, encoding='utf-8') logfile.setLevel(log_level) # setup log file formatting: if formatter is None: formatter = Formatter('%(asctime)s [%(process)d] %(levelname)-8s %(name)s: %(message)s') logfile.setFormatter(formatter) log.addHandler(logfile) return log