Hi Frank/Alena/Sheng!

Actually I hadn't modified that part of the code when making changes earlier, 
but we definitely should be seeing more than just classname@hash-of-object 
which is toString()'s default output when it's passed an Object, so I'll do 
what Alena suggested and override toString in the ExceptionResponse class. 
However, I have a question for Frank - is it necessary for us to print out the 
exception stack trace, since that would surely show up in the mgmt. server log 
file? Also, wanting to print the stack trace would mean having to change quite 
a few parts of the code to pass the exception object to the calls that build 
the responses to the exception. Any specific reason why this wasn't the 
approach to begin with, other than that the exception stack trace would show up 
in the mgmt. server log file?

Finally, the function CompleteAsyncJob() which prints out the message Sheng 
referred to:

s_logger.debug("Complete async job-" + jobId + ", jobStatus: " + jobStatus +
                    ", resultCode: " + resultCode + ", result: " + 
resultObject);

is invoked at different parts of the code that builds resultObject differently 
- in extractVolume() in ManagementServerImpl.java and updateDatabase() in 
UploadListener.java, it's of type ExtractResponse instead of ExceptionResponse. 
So I think I'll have to override toString() in both ExceptionResponse and 
ExtractResponse classes - Alena, does that sound right?


Regards,
Vijay

-----Original Message-----
From: Frank Zhang 
Sent: Monday, July 09, 2012 11:12 AM
To: cloudstack-dev@incubator.apache.org; Vijayendra Bhamidipati
Subject: RE: Add ExceptionResponse in the log?

Vijay, please make sure stack trace is logged as well.  Text of 
Exception.getMessage() is definitely not enough 

> -----Original Message-----
> From: Alena Prokharchyk [mailto:alena.prokharc...@citrix.com]
> Sent: Monday, July 09, 2012 10:53 AM
> To: cloudstack-dev@incubator.apache.org; Vijayendra Bhamidipati
> Subject: Re: Add ExceptionResponse in the log?
> 
> We should def. print out the reason.
> 
> Vijay, just override toString() method in the Exception response to 
> log the reason for the failure in addition to the error code.
> 
> -Alena.
> 
> 
> On 7/9/12 10:44 AM, "Sheng Yang" <sh...@yasker.org> wrote:
> 
> >After we add ExceptionResponse for user to better understand what's 
> >wrong, there has been nothing left in the log for developer to know 
> >what's wrong...
> >
> >What we got now is only something like:
> >
> >2012-07-09 19:22:10,098 DEBUG [cloud.async.AsyncJobManagerImpl]
> >(Job-Executor-32:job-29) Complete async job-29, jobStatus: 2,
> >resultCode: 530, result:
> >com.cloud.api.response.ExceptionResponse@3fa28ae
> >
> >And nothing else.
> >
> >Could we just output every ExceptionResponse in the log? That's would 
> >be much more helpful.
> >
> >--Sheng
> >
> 

Reply via email to