2011-01-26 4 views
12

장고에서 특정 앱에만 DEBUG = False를 설정할 수 있습니까? 디버깅을 사용할 때 Celery는 known memory leak입니다. 셀러 리가 서비스로 실행되도록 디버깅하지 않고 메모리가 누출되지 않도록하는 개발 서버를 가지고 있지만 나머지 장고 앱이 디버깅을 사용하여 테스트 할 때 오류가 표시되도록하고 싶습니다.셀로리 용 장고 디버깅 사용 안함

답변

30

셀러리는 메모리 누수가없는, 그것은 장고 작동하는 방법 : DEBUG 장고를 활성화

django.db.connection.queries에 실행 된 모든 SQL 문을 추가, 이것은 장기 실행 프로세스 환경에서 무제한으로 증가 할 것이다.

if "celeryd" in sys.argv: 
    DEBUG = False 
+2

당신이 수정 manage.py를 할 수 있는지 확인합니다 :

난 당신이 같은 해킹을 사용할 수있는 것 같아요? – Cerin

+2

아니요, settings.py에서 수행하십시오. – asksol

+0

이것은 Celery 4.x에서 작동하지 않습니다./usr/celery/bin 경로를 업데이트했지만 여전히 해킹이 작동하지 않았습니다. django 설정을 이런 식으로 가져 오는 방법과 관련이 있다고 생각합니다. self._settings = symbol_by_name ('django.conf : settings') 아직 해결 방법을 찾지 못했습니다. – sww314