2010-01-10 1 views
5

가능한 중복 :
Django Unhandled ExceptionApache + mod_python + Django에서 500 서버 오류를 어떻게 추적합니까?

내가 무작위로 500 서버 오류를 얻고 문제를 진단하기 위해 노력하고있어.

아파치 +서든 mod_python + 장고

내 500.html 페이지가 장고에 의해 제공되고있다,하지만 난 오류의 원인이 무엇인지 단서가 없다 : 설치입니다. 내 Apache access.log 및 error.log 파일에 중요한 디버깅 정보가 포함되어 있지 않습니다. 요청을 표시하는 것 외에는 500을 반환했습니다.

mod_python 또는 일반적인 Python 오류 로그가 있습니까 (Ubuntu 서버)?

감사합니다.

답변

3

예, 오류 로그가 가상 서버의 위치와 관련하여 아파치 conf에 항목이 있어야합니다. 는 예를 들어 내 가상 서버의 이름은 djangoserver하고, 내/등/아파치/사이트 사용/djangoserver 파일에

ErrorLog /var/log/apache2/djangoserver-errors.log 

가 지금은 질문을 다시 읽어 것을 있지만, 당신은 이미이 나타나는 행은 아파치 로그 돌봐. 나는 mod_python이나 python 자체에 대한 별도의 로그가 있다고 생각하지 않는다.

프로덕션 설정입니까?

Debug mode을 켜기를 원할 경우 Django는 오류 정보와 함께 매우 자세한 화면을 생성합니다. 프로젝트의 settings.py에서 일반 500 오류 화면을 비활성화하고 자세한 분석을 보려면

DEBUG = True 
TEMPLATE_DEBUG = DEBUG 

을 설정하십시오.

+0

응답 해 주셔서 감사합니다. 아파치 오류 로그를 읽었지만 그 정보는별로 가치가 없습니다. 예, 이것은 프로덕션 환경이므로 DEBUG를 켜지 않는 것이 좋습니다. 어려운 점은 오류를 보지 않고 고객이 무작위로 표시된다는 것입니다. 그래서 소급하여 진단하려고합니다. 내 꿈은 어딘가에 오류 로그에서 파이썬 스택 추적을 보는 것입니다. –

+0

당신이 무슨 뜻인지 아시다시피, 나는 PHP를 위해 기록 된 모든 오류를 가지고 있습니다. 그러나 장고로 어떻게 가져갈 지 잘 모르겠습니다. 나는 또한 사실을 알아야한다. diegueus9의 반응은 좋은 정보로 이어집니다. – JAL

0

살사는 여러 가지 좋은 제안을합니다. 나는 Django 개발 서버가 이러한 것들을 추적하기위한 훌륭한 환경이라고 덧붙일 것이다. 때로는 심지어 생산 디렉토리 (gasp!)에서 실행하기도합니다. ./manage.py runserver 0.0.0.0:8000이므로 을 알고 있습니다. 동일한 코드를 실행하고 있습니다.

때때로 아파치에서는 dev가 아닌 서버에서는 실패하지만 그 자체가 힌트입니다.