에 대한 응답으로 자신의 handler500 및 테스트를 등록 할 수있는 것을 볼 수있는 오류가 발생해도 어떤 방법이 DEBUG가 True이면 어떤 일이 발생했는지 나타내며, DEBUG가 False이면 일반 오류 만 표시합니다.
다른 옵션은 Firebug 또는 Chrome Inspector를 사용하여 Ajax 응답을 탐색하거나 어떤 사이트에서 부검을 수행하기 위해 사이트가 배포 된 경우에도 유용한 오류를 기록하는 일부 형태의 기록을 설정하는 것입니다 발생할 수있는 오류.
장고 자체에는 로깅 기능이 내장되어 있으며 그 중 하나는 관리자에게 전자 메일을 보내지 만 사용자는 Django's integration with Python's built in logging을 사용하여 자신을 정의 할 수 있습니다. 이들에 대한 처리기의 한 가지 옵션은 발생하는 모든 오류를 기록하기 위해 모든 제작 사이트에서 사용하는 django-sentry이며 정확한 오류를 찾는 데 사용할 수있는 참조 번호를 최종 사용자에게 제공하기 위해 handler500을 무시하는 기능을 포함합니다 예.
센트리는 2 개의 앱으로 구성되며, 하나는 서버이고 다른 하나는 클라이언트입니다. 일반적인 프로덕션 환경에서 동일한 시스템에 여러 시스템이있는 경우에는 센트리 서버 전용 서버가 있습니다. 그러나 하나의 사이트가 사이트에 통합되어있는 것은 괜찮습니다.
센트리를 구성하려면 INSTALLED_APPS
에 sentry
(서버)과 sentry.client
(클라이언트)을 모두 추가해야합니다. 그런 다음 로깅을 구성해야합니다.
LOGGING = {
"version": 1,
"disable_existing_loggers": False,
"handlers": {
"mail_admins": {
"class": "django.utils.log.AdminEmailHandler",
"level": "ERROR"
},
"sentry": {
"class": "sentry.client.handlers.SentryHandler",
"level": "ERROR",
}
},
"loggers": {
"django.request": {
"handlers": ["sentry", "mail_admins"],
"level": "ERROR",
"propagate": True
}
},
}
위의 예는 오류가 계속 이메일 관리자 발생 할 경우 DEBUG = False
: 여기
은 예입니다. 그렇게하고 싶지 않다면
django.request
의 핸들러에서
mail_admins
을 제거하십시오.
실제로 심지어 AJAX 응답을 검색하고 확인할 수있는 오류입니다. –
테스트에서 구문 오류를 포착하지 않는 이유는 무엇입니까? –
나는 내 바탕 화면에서 응용 프로그램을 만들고 많은 것을 변경하고 있습니다. 나는 나 자신을 시험하고있다. 나는 문제가있다. 방화 광 콘솔도 서버 측에서 발생하는 오류를 보이지 않습니다. –