| author | Production Moz <dev@sopinspace.com> |
| Tue, 15 May 2012 14:15:34 +0200 | |
| changeset 435 | 96c16cc6408b |
| parent 201 | e0032b64c314 |
| permissions | -rw-r--r-- |
|
201
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
1 |
from django.conf import settings |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
2 |
from django.core.mail import mail_admins |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
3 |
import sys |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
4 |
|
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
5 |
def _get_traceback(exc_info): |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
6 |
import traceback |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
7 |
return '\n'.join(traceback.format_exception(*(exc_info or sys.exc_info()))) |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
8 |
|
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
9 |
def error_mail_admins(subject='Error', request=None): |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
10 |
if request: |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
11 |
subject = 'Error (%s IP): %s' % ((request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS and 'internal' or 'EXTERNAL'), request.path) |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
12 |
|
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
13 |
try: |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
14 |
request_repr = repr(request) |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
15 |
except: |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
16 |
request_repr = "Request repr() unavailable" |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
17 |
|
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
18 |
exc_info = sys.exc_info() |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
19 |
message = "%s\n\n%s" % (_get_traceback(exc_info), request_repr) |
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
20 |
|
|
e0032b64c314
add try/except for local timezone conversion to prevent timezone error (mail admins)
raph
parents:
diff
changeset
|
21 |
mail_admins(subject, message, fail_silently=True) |