JTraceDump provides a facility to keep a history of application processing steps in memory and dump it in case of an error. It is not a replacement, but an addition to trace- or debug-logging.
Usually, trace-logs are only active during development and testing stage of an application. When the application goes into production, trace logs are usually disabled for performance reasons. Now, if there is a problem later on (for example a null-pointer-problem due to a threading problem in a server), there is often very few information available about what led to the problem. Typically, as the developer, you'd have to get the administrator to enable the trace logging again and then tell the user to reproduce the error. Then you could analyze the logs to find the problem. However, the error might just not be reproducible at all, and the whole process involves a lot of people (= overhead), especially in large corporate environments.
See Other Best Logging Tools Projects in Java: