Flask记录调试设置

2024-06-28 00:32:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在为我的烧瓶应用程序使用以下配置:

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")

(上面,只将错误消息附加到gunicorn.out- 2015-04-26 18:03:38182-错误-使用StagingConfig)

因为这个配置是在一个分阶段的应用程序中使用的,所以我希望DEBUG为False,这样在出现错误时我不会得到Flask调试屏幕,而是标准的error500屏幕。尽管出于某些原因,当DEBUG设置为False时,记录错误消息(error除外)将停止。在

一旦DEBUG设置为True,日志记录就会正确进行。既然我在日志处理程序上设置了日志级别,这些值不应该是独立的吗?在


Tags: debugimportfalseapp应用程序formatterlogging错误