I am using the following config for my Flask app:
class StagingConfig(Config):
DEBUG = False
MONGO_DB_NAME = "res_stage_database"
@classmethod
def init_app(cls, app):
import logging
from logging.handlers import RotatingFileHandler
rotating_handler = RotatingFileHandler(filename='gunicorn.out', maxBytes=10000000, backupCount=5)
rotating_handler.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
rotating_handler.setFormatter(formatter)
app.logger.addHandler(rotating_handler)
app.logger.info("Using StagingConfig")
app.logger.error("Using StagingConfig")
(Above, appends only the error message to gunicorn.out-
2015-04-26 18:03:38,182 - ERROR - Using StagingConfig )
Since this config is used in a staged app, I want DEBUG to be False, so that I dont get Flask debug screens in case of errors, and instead the standard error 500 screen. Although for some reason, when DEBUG is set to False, logging of error messages except error stops.
As soon as DEBUG is set to True, logging occurs correctly. Shouldn't these values be independent, since I set my log level on the logging handler?