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

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 学不会递归,理解不了汉诺塔参数变化
  • ¥15 基于图神经网络的COVID-19药物筛选研究
  • ¥30 软件自定义无线电该怎样使用
  • ¥15 R语言mediation包做中介分析,直接效应和间接效应都很小,为什么?
  • ¥15 Jenkins+k8s部署slave节点offline
  • ¥15 如何实现从tello无人机上获取实时传输的视频流,然后将获取的视频通过yolov5进行检测
  • ¥15 WPF使用Canvas绘制矢量图问题
  • ¥15 用三极管设计一个单管共射放大电路
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'