Как я могу включить запрос. Подробная информация о пользователе в электронном письме от Django для рабочего сайта - PullRequest
4 голосов
/ 09 февраля 2011

Я хотел бы включить содержимое request.user в подробности контекста, отправленные администраторам сайта при возникновении ошибки, а также трассировку и запрос. GET / POST / COOKIES / META

Любойпомощь оценена.

Ответы [ 2 ]

7 голосов
/ 09 февраля 2011

Поскольку промежуточному программному обеспечению process_exception передается объект запроса, вы можете добавить любую информацию, которую хотите запросить.

2 голосов
/ 09 февраля 2011

Создайте промежуточное программное обеспечение с методом process_exception.http://docs.djangoproject.com/en/dev/topics/http/middleware/#process-exception

import sys
import traceback
from django.conf import settings
from django.core.mail import mail_admins

class ProcessExceptionMiddleware(object):
    def process_exception(self, request, exception):
        if not settings.DEBUG:
            msg = '\n\n'.join([request.user, request.GET, request.POST, \
                request.COOKIES, request.META, traceback.format_exc(*sys.exc_info())])

            mail_admins("Error!", msg)

Я надеюсь, что это дает вам некоторые идеи!

...