Неизвестное исключение Django (Postgis) в журнале ошибок Apache без отчета по электронной почте - PullRequest
3 голосов
/ 22 августа 2011

Я использую несколько сайтов Django, используя Apache + mod_wsgi. Теперь я только что увидел следующую ошибку в одном из журналов ошибок Apache:

[Mon Aug 22 16:12:01 2011] [error] Exception AttributeError: "'NoneType' object has no attribute 'finishGEOS_r'" in <bound method GEOSContextHandle.__del__ of <django.contrib.gis.geos.prototypes.threadsafe.GEOSContextHandle object at 0xb9641f0c>> ignored

Странно то, что я не получаю никаких сообщений об ошибках почты от Django вообще относительно этого исключения (все сайты работают с DEBUG = false и правильными почтовыми адресами в списке ADMINS).

Кто-нибудь знает, что может вызвать эту ошибку? Означает ли конечный >> ignored, что исключение игнорируется и пользователь не получает страницу HTTP 500?

Ответы [ 2 ]

0 голосов
/ 14 февраля 2012

Если у меня хорошая память, если метод деструктора вызывается как побочный эффект исключения, и в деструкторе возникает дополнительное исключение, то Python не может распространить новое, и поэтому Python сам будет регистрировать его непосредственно в STDERR. Тогда исходное исключение остается тем, которое поднято. Вот почему вы не увидите последнего, захваченного Джанго и отправленного по электронной почте в список ADMINS и т. Д.

0 голосов
/ 13 февраля 2012

Я считаю, что это просто logging.error сообщение, а не 500

см.
http://python.6.n6.nabble.com/Re-Django-13843-destroy-geom-filling-up-the-apache-error-logs-tt365140.html#none

, если вы используете Apache, журнал ошибок должен сообщать вам статус httpв любом случае этого запроса, так что вы можете увидеть, получил ли пользователь ошибку 500?

...