2011-05-01 5 views
1

django/apache/mod_wsgi를 통해 실행중인 웹 서비스를 디버깅하려고합니다. 서버 측을 실행하는 데 오랜 시간이 걸리지 만 특정 매개 변수 그냥 시간 초과됩니다. 나는 wget을 URI에서 똑바로하고, urllib2을 사용해 보았습니다. 나는 wget에서 다음과 같은 오류가 발생합니다 :mod_wsgi/django/apache/wget 타임 아웃을 디버그하는 방법

Read error (Connection timed out) in headers 

한편, urllib2 반환 전혀 아무것도 - 그것은 자동으로 erroring 것으로 보인다. 내 아파치 설정에서 Timeout 지시문을 늘려 보았지만 도움이되지 않습니다. 이 서비스는 다른 매개 변수로 잘 실행됩니다. 어떻게 디버깅해야합니까? 아파치가 아니라면 타임 아웃은 어디에서 오는 것입니까?

답변

0

서비스 코드에 문제가있는 것 같습니다. 서비스 코드가 실행 완료되었는지 확인하고 아파치를 디버그하기 전에 아파치로 돌아갑니다.

출력 코드를 추가하여 서비스 코드를 추적하는 것이 좋습니다. 코드가 mod_wsgi (mod_wsgi가 호출하는 함수의 마지막 줄)로 반환되기 바로 전에 ouput 문을 추가해야합니다. 특정 지점에 매달려있는 코드가 표시됩니다. 즉, 코드의 해당 지점 이전에 모든 디버그 명령문이 나타나고, 그 지점 이후의 출력 명령문은 나타나지 않습니다.

디버그 문을 추가하지 않으려면 디버거를 사용하여 코드를 단계별로 실행하십시오.

다른 옵션은 django 개발 서버를 사용하고 아파치없이 실행할 때 시간 초과가 발생하는지 확인하는 것입니다. 그러나 개발 서버가 단일 스레드이므로 문제가 동시 처리 관련 버그 인 경우 코드가 중단되지 않습니다.

+1

@ user560833 그래서 결국 어떻게 되었습니까? –

관련 문제