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日

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改