import json
import logging
from logging.handlers import RotatingFileHandler

with open('cfg.json', 'r') as f:
    cfg_dict = json.load(f)

logger = logging.getLogger(__name__)
logger.setLevel(level=logging.DEBUG)

formatter = '%(asctime)s - %(filename)s - [line]:%(lineno)d - %(levelname)s - %(message)s'

size_rotate_file = RotatingFileHandler(
    filename=cfg_dict['log_path'], maxBytes=10 * 1024 * 1024, backupCount=10)
size_rotate_file.setFormatter(logging.Formatter(formatter))
size_rotate_file.setLevel(logging.INFO)

console_handler = logging.StreamHandler()
console_handler.setLevel(level=logging.DEBUG)
console_handler.setFormatter(logging.Formatter(formatter))

logger.addHandler(size_rotate_file)
logger.addHandler(console_handler)