Solution 1
import os
import logging
from logging.handlers import TimedRotatingFileHandler
from datetime import datetime
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
formatter = logging.Formatter('[%(asctime)s] %(levelname)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
handler = TimedRotatingFileHandler(os.path.join('./', 'custom_log.log'),
when='midnight', backupCount=7)
handler.setLevel(logging.INFO)
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.info("Info")
logger.warning("Warning")
logger.error("Error")
Solution 2
from flask import Flask
import logging
from logging.handlers import RotatingFileHandler
app = Flask(__name__)
if __name__ == '__main__':
handler = RotatingFileHandler('test.log', maxBytes=12000, backupCount=5)
handler.setLevel(logging.INFO)
app.logger.addHandler(handler)
app.run()