【发布时间】:2017-11-26 12:15:10
【问题描述】:
寻找一种方法在我的错误日志中添加标题、正文和用户的电子邮件地址以及我的 views.py
中的异常堆栈跟踪在网上搜索了几个小时后,许多人建议编写我自己的中间件,有些人建议将此类信息记录到单独的日志中。然而,知道你的代码哪里出错可以解决问题的一部分,确定它影响了哪个可怜的灵魂以及在该异常期间发送了哪些请求数据,这对于纠正问题大有帮助。将这些信息放在同一个日志文件中对我来说很有意义。
目前在我的views.py中,我有这个简单的设置:
from django.db.models import Min, Max, Q, F, Count, Sum
from django.db import connection
from django.conf import settings
from django.http import HttpResponse, HttpResponseRedirect
from myapp.models import *
import logging
logging.basicConfig(filename="errors.log",
level=logging.ERROR,
format='%(asctime)s: %(message)s')
def random_view(request):
if request.user.is_authenticated() and request.user.is_active:
# generic view code goes here.
else:
return HttpResponse(status=401)
此设置在一段时间内运行良好。每次出现异常时,都会注销时间、异常错误信息和堆栈跟踪。
我如何还可以添加 request.META、request.user.id 和 request.body 以及堆栈跟踪?
任何建议都会有所帮助。一个成功的答案,甚至更好!
谢谢
【问题讨论】:
-
我认为您应该研究现有的解决方案,例如哨兵stackoverflow.com/a/44688358/3627387