Mercurial > code > home > repos > light9
annotate lib/cycloneerr.py @ 1060:473db8bebb8f
install a copy of cycloneerr.py
Ignore-this: cd8b94a251fff5cd9412775258a1f2cf
author | Drew Perttula <drewp@bigasterisk.com> |
---|---|
date | Mon, 02 Jun 2014 00:19:38 +0000 |
parents | |
children |
rev | line source |
---|---|
1060
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
1 import httplib, cgi |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
2 |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
3 class PrettyErrorHandler(object): |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
4 """ |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
5 mix-in to improve cyclone.web.RequestHandler |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
6 """ |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
7 def get_error_html(self, status_code, **kwargs): |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
8 try: |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
9 tb = kwargs['exception'].getTraceback() |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
10 except AttributeError: |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
11 tb = "" |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
12 return "<html><title>%(code)d: %(message)s</title>" \ |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
13 "<body>%(code)d: %(message)s<pre>%(tb)s</pre></body></html>" % { |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
14 "code": status_code, |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
15 "message": httplib.responses[status_code], |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
16 "tb" : cgi.escape(tb), |
473db8bebb8f
install a copy of cycloneerr.py
Drew Perttula <drewp@bigasterisk.com>
parents:
diff
changeset
|
17 } |