diff options
author | Martin Kosek <mkosek@redhat.com> | 2015-01-20 23:13:23 +0100 |
---|---|---|
committer | Martin Kosek <mkosek@redhat.com> | 2015-01-22 17:46:48 +0100 |
commit | 834c911f9603ae77ac2483f154d62a5f0670c297 (patch) | |
tree | eed118721c50c088ce1fb942e217f2189e46196d /ipaserver | |
parent | fe4b3190e97679181d4d1349ad56e27ffe49dccd (diff) | |
download | freeipa-834c911f9603ae77ac2483f154d62a5f0670c297.tar.gz freeipa-834c911f9603ae77ac2483f154d62a5f0670c297.tar.xz freeipa-834c911f9603ae77ac2483f154d62a5f0670c297.zip |
Print PublicError traceback when in debug mode
The framework only shows traceback for the internal/unknown errors,
recognized PublicErrors are simply passed back to the FreeIPA
clients.
However, sometimes it would help to see a traceback of the
PublicError to for example see exactly which line returns it.
https://fedorahosted.org/freeipa/ticket/4847
Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipaserver')
-rw-r--r-- | ipaserver/rpcserver.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ipaserver/rpcserver.py b/ipaserver/rpcserver.py index 18de23d3a..d6bc955b9 100644 --- a/ipaserver/rpcserver.py +++ b/ipaserver/rpcserver.py @@ -29,6 +29,7 @@ import os import datetime import urlparse import json +import traceback import ldap.controls from pyasn1.type import univ, namedtype @@ -347,6 +348,8 @@ class WSGIExecutioner(Executioner): else: result = self.Command[name](*args, **options) except PublicError, e: + if self.api.env.debug: + self.debug('WSGI wsgi_execute PublicError: %s', traceback.format_exc()) error = e except StandardError, e: self.exception( |