Maybe I did not think this through... Today, if someone calls logger.trace(throwable), we log throwable.toString(). If we change that to logging a stack trace, it's a big change in behavior.
The question is: Should we consider calling logger.trace(throwable) a bug if we log throwable.toString() instead of a stack trace? Gary On Fri, Feb 27, 2015 at 8:50 PM, Remko Popma <[email protected]> wrote: > Sorry, I don't understand what you mean. > > If users want to log a stack trace they use logger.trace(throwable); > If they want to log the result of throwable.toString() they call > logger.trace(throwable.toString()); > > Or am I missing something? > > Remko > > > On 2015/02/28, at 10:01, Gary Gregory <[email protected]> wrote: > > Yeah, that's a bit too clever and does not give you the option of actually > having a Throwable as an "Object" that will be toString()... > > Gary > > On Fri, Feb 27, 2015 at 4:41 PM, Remko Popma <[email protected]> > wrote: > >> Nice catch! I just saw this happen at work, I agree we should do >> something about it. >> >> One solution would be to modify ObjectMessage.getFormattedString(): >> If the object is an instance of Throwable then return the Throwable's >> stacktrace instead of its toString() result. >> >> I'm not a big fan of using instanceof, but it gives us a very compact >> solution. >> >> Thoughts? >> >> Sent from my iPhone >> >> On 2015/02/28, at 8:33, Gary Gregory <[email protected]> wrote: >> >> Hi All: >> >> I was just surprised (in a bad) way that calling: >> >> logger.trace(Throwable) compiles to the Object version of the API since >> we do not have a Throwable API. >> >> This means I am forced to do: >> >> logger.trace("Cause:", throwable); >> >> in order to see the stack trace. >> >> Thoughts on adding trace(Throwable)? (As well as the other levels) >> >> Gary >> >> -- >> E-Mail: [email protected] | [email protected] >> Java Persistence with Hibernate, Second Edition >> <http://www.manning.com/bauer3/> >> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >> Spring Batch in Action <http://www.manning.com/templier/> >> Blog: http://garygregory.wordpress.com >> Home: http://garygregory.com/ >> Tweet! http://twitter.com/GaryGregory >> >> > > > -- > E-Mail: [email protected] | [email protected] > Java Persistence with Hibernate, Second Edition > <http://www.manning.com/bauer3/> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > Spring Batch in Action <http://www.manning.com/templier/> > Blog: http://garygregory.wordpress.com > Home: http://garygregory.com/ > Tweet! http://twitter.com/GaryGregory > > -- E-Mail: [email protected] | [email protected] Java Persistence with Hibernate, Second Edition <http://www.manning.com/bauer3/> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> Spring Batch in Action <http://www.manning.com/templier/> Blog: http://garygregory.wordpress.com Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory
