Add resource fault detail in exception

This commit adds the fault attribute of resource to
exception message when the resource goes into error
state. This will allow easy lookup and tracking
of the actual cause of the error rather than manually
looking it up for each resource. Adding to exception
also allows the detailed error to be available in
the generated reports.

Change-Id: I1293bc5b2fd1c344f0752d5cb89ccbbcebb351fc
This commit is contained in:
Harsh Shah 2015-10-01 16:18:57 +00:00
parent bc18883372
commit c94458d4df
2 changed files with 5 additions and 3 deletions

View File

@ -137,7 +137,8 @@ class GetResourceNotFound(GetResourceFailure):
class GetResourceErrorStatus(GetResourceFailure):
msg_fmt = _("Resource %(resource)s has %(status)s status.")
msg_fmt = _("Resource %(resource)s has %(status)s status.\n"
"Fault: %(fault)s")
class ScriptError(RallyException):

View File

@ -85,8 +85,9 @@ def get_from_manager(error_statuses=None):
if status in ("DELETED", "DELETE_COMPLETE"):
raise exceptions.GetResourceNotFound(resource=res)
if status in error_statuses:
raise exceptions.GetResourceErrorStatus(resource=res,
status=status)
raise exceptions.GetResourceErrorStatus(
resource=res, status=status,
fault=getattr(res, "fault", "n/a"))
return res