Similar errors often plague multiple users who in turn report them to the developers. To ease the resulting load on the developers, the Codetrails Error Analytics Server analyzes all incoming reports and performs automatic duplicate detection. After duplicate detection, similar error reports are grouped under the same problem if they share the same root cause.
(Learn more about error reports, problems and similar core concepts.)
Especially in a highly modular environment with multiple versions of the software deployed in the wild, as is the case for most Eclipse IDE plug-ins and RCP applications, there exist dozens variants of the same problem. In some cases, only simple things like line numbers or versions vary. In other cases, however, the reported stack traces differ more radically, as different execution paths were being taken, e.g., due to platform-specific code.
This means that error analytics approaches that rely on simple fingerprints of the stack trace will produce too many duplicates. For an Eclipse plug-in that runs on a few versions of Eclipse, the variations in execution environment mean that about every second exception has a different stack trace. In other words, in 100 error reports a simplistic approach would see almost 50 different problems. In reality, however, these 100 error reports on average describe just two distinct problems. Codetrails Error Analytics Server’s advanced duplicate detection algorithms reliably identify these two root problems — and saves you from reviewing 98 duplicates!
The Codetrails Error Analytics Server can handle different kinds of error reports, from the classic
OutOfMemoryErrors to UI freezes.
Each kind is analyzed by a dedicated duplicate detector.
All these detectors contain Eclipse-specific logic to cope with, e.g., the OSGi environment, IStatus and MultiStatus logging patterns, and SWT’s thread switching mechanism.