장고에 내장 된 사이트가 있습니다.장고 오류 전자 메일에 지역 변수 포함
생산 사이트에서 오류가 발생하면 Django는 자동으로 settings.py의 ADMINS 목록에 나열된 전자 메일 주소로 스택 추적을 보냅니다.
이 스택 추적에 사이트가 디버그 모드에있을 때 표준 스택 추적과 같은 각 스택 프레임에 대한 로컬 변수가 포함되기를 바랍니다.
아이디어가 있으십니까?
감사합니다.
장고에 내장 된 사이트가 있습니다.장고 오류 전자 메일에 지역 변수 포함
생산 사이트에서 오류가 발생하면 Django는 자동으로 settings.py의 ADMINS 목록에 나열된 전자 메일 주소로 스택 추적을 보냅니다.
이 스택 추적에 사이트가 디버그 모드에있을 때 표준 스택 추적과 같은 각 스택 프레임에 대한 로컬 변수가 포함되기를 바랍니다.
아이디어가 있으십니까?
감사합니다.
정말 간단하게 설정할 수 있습니다. 어떤 처리기가 오류 전자 메일을 보내고 있는지 로깅 구성에 'include_html': True
을 입력하면됩니다. 예를 들어
(이것은 "include_html"라인에서 제외하고 기본 로깅 핸들러) : 이것은 당신이 얻을 오류 페이지의 내용에 오류 이메일에서 HTML 첨부 파일이 포함
'handlers': {
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false',],
'class': 'django.utils.log.AdminEmailHandler',
'include_html': True
}
}
경우 DEBUG = 참된. Django docs에는 보안에 대한 몇 가지 세부 정보와 메모가 있습니다.
더 많은 것들을 커스터마이즈 할 필요가있는 경우 서브 클래스가 django.utils.log.AdminEmailHandler
과 django.views.debug.ExceptionReporter
인 로깅 핸들러를 설정할 수도 있습니다.
Django의 기본 로깅 설정을 가져 와서 settings.py에서 필요한 비트를 무시하는 방법이 있습니까? 이것은 작동하지 않지만, 나는 무엇을 의미하는지 보여줍니다 :'django.conf.settings import logging LOGGING [ 'handlers'] [ 'mail_admins'] [ 'include_html'] = True' –
알립니다. 그것은 : django.utils.log에서 DEFAULT_LOGGING을 LOGGING으로 가져 오기 LOGGING [ 'handlers'] [ 'mail_admins'] [ 'include_html'] = True' –