kuyoro 2022-07-29 13:31 采纳率: 92.7%
浏览 72
已结题

python flask 如何记录500错误日志

生产环境配置
app.config['DEBUG'] = False

开发环境配置
app.config['DEBUG'] = True

如果生产环境发生bug,页面直接显示500错误页面了,无法像开发环境看到错误明细,定位到错误语句。

请问有什么方式可以查到出现错误的语句呢?

网上有一个方法,https://www.cnpython.com/qa/31281,但需要在每个视图中加try,对于大型网站,不实用。

  • 写回答

4条回答 默认 最新

  • CSDN专家-showbo 2022-07-29 14:34
    关注

    下面的方法试过吗?
    You want to save exception and return error page for every view. It is a lot of work to write this code everywhere. Flask provides a method to do this. Define an errorhandler method like this.

        @app.errorhandler(500)
        def internal_error(exception):
            app.logger.error(exception)
            return render_template('500.html'), 500
    
    

    Whenever a view raises an exception, this method will be called and passed the exception as argument. Python logging provides exception method that is used to save full traceback of the exception.

    https://stackoverflow.com/questions/14037975/how-do-i-write-flasks-excellent-debug-log-message-to-a-file-in-production

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月2日
  • 已采纳回答 8月2日
  • 创建了问题 7月29日

悬赏问题

  • ¥15 帮我解决一下膳食平衡的线性规划模型的数据实例
  • ¥40 万年历缺少农历,需要和阳历同时显示
  • ¥250 雷电模拟器内存穿透、寻基址和特征码的教学
  • ¥200 比特币ord程序wallet_constructor.rs文件支持一次性铸造1000个代币,并将它们分配到40个UTXO上(每个UTXO上分配25个代币),并设置找零地址
  • ¥15 关于Java的学习问题
  • ¥15 如何使用chatgpt完成文本分类任务?
  • ¥15 已知速度v关于位置s的等式,怎么转化为已知位置求速度v的等式
  • ¥15 我有个餐饮系统,用wampserver把环境配置好了,但是后端的网页却进去,是为什么,能不能帮远程一下?
  • ¥15 R运行没有名称为"species"的插槽对于此对象类"SDMmodelCV"
  • ¥20 基于决策树的数字信号处理,2ask 2psk 2fsk的代码,检查下报错的原因