[logback-dev] [JIRA] Commented: (LBCLASSIC-46) ThrowableInformation should keep the Throwable cause hierarchy intact.
Ceki Gulcu (JIRA)
noreply-jira at qos.ch
Fri Feb 27 17:42:47 CET 2009
[ http://jira.qos.ch/browse/LBCLASSIC-46?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=11059#action_11059 ]
Ceki Gulcu commented on LBCLASSIC-46:
-------------------------------------
The IThrowableProxy interface is very close to your suggested structure.
See revision 2174 at http://svn.qos.ch/viewvc?view=rev&revision=2174
Note that ThrowableDataPoint class cannot be replaced by StackTraceElementProxy
due to additional packaging information carried.
The code still has a few warts which I intend to correct as we go along.
> ThrowableInformation should keep the Throwable cause hierarchy intact.
> ----------------------------------------------------------------------
>
> Key: LBCLASSIC-46
> URL: http://jira.qos.ch/browse/LBCLASSIC-46
> Project: logback-classic
> Issue Type: Improvement
> Components: Other
> Affects Versions: unspecified
> Environment: Operating System: All
> Platform: All
> Reporter: Joern Huxhorn
> Assignee: Logback dev list
> Priority: Minor
>
> Instead of a String representation of the whole Throwable stack trace incl. cause ThrowableInformation should instead look like this:
> public class ThrowableInformation implements Serializable
> {
> String throwableClassName;
> String message;
> StackTraceElement[] stackTrace;
> ThrowableInformation cause;
> }
> I omitted get/set and private in this example.
> StackTraceElement is perfectly Serializable and did also receive a public c'tor in Java 5 so I guess that the current ThrowableInformation is more or less a relict of log4j which had to stay compatible with older Java versions.
> You could obviously keep the getThrowableStrRep() method for compatibility.
> This bug is somewhat related to LBCLASSIC-45 because I think that ThrowableInformation should also, as LoggingEvent, be just a dumb data container with no real logic.
> The logic to extract the relevant StackTraceElements should IMHO be moved either into Logger or into a static factory method of ThrowableInformation.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.qos.ch/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the logback-dev
mailing list