About Error Reports, Problems, Bugs, and Projects

What exactly does Codetrails Error Analytics mean by terms like error reports, problems, bugs, and projects? In this article, you will learn about these core concepts.

error reports problems bugs projects overview.png
Figure 1. The core concepts of Codetrails Error Analytics and their relations to each other.

Error Reports

By default, automated error reports contain:

  • a random reporter ID

  • an error message, and

  • a stack trace,

along with some additional information about the environment in which the error occurred, e.g.:

  • the names of the JARs occurring on the stack trace

  • the product version

  • the Java version used, and

  • information about the operating system used.

Moreover, reporters can provide additional details by adding comments to their reports, .e.g., describing steps to reproduce the problem. Reporters can also send their email address so they can be informed about any progress on the problems they reported.

Codetrails Error Analytics is more than an error collector. It also allows you to keep in touch with your users by notifying them about the current status of all error reports, either directly in their software or by email.


As soon as an error report arrives on the server, it will be analyzed and subsequently assigned to one or more problems. A problem thus represents a set of (similar) error reports which usually have the same root cause – for example a bug in your software.

Codetrails Error Analytics uses numerous advanced heuristics to assign every incoming error report to already existing problems. These error reports, however, don’t have to be identical (i.e., need to have the same hash) to be assigned to the same problem. It’s enough if they are “sufficiently similar”. This process is called duplicate detection or deduplication.


In a final step, all problems are assigned to one or more projects. A project combines a set of Java packages to a logical unit. These packages are typically maintained by a single development team, which also takes care of any bugs in the code.

In the simplest case, all incoming error reports will be assigned to a single project. In case that the stack trace contains classes belonging to several projects (which is the common case for large systems like the Eclipse IDE), the Error Analytics Server guesses the most likely projects based on a set of configurable heuristics.

If you develop your software in a single team, you just create one project. If you are working in many small teams and you would like to have separate statistics for each of your code modules, then you’ll define one project per module.


As explained above, a problem is a container for a set of (similar) error reports with the same root cause. In Codetrails Error Analytics each problem has its own status (Open, Closed etc.) which allows you to use it as simple bug tracker for your automated error reports.

But Codetrails Error Analytics also seamlessly integrates with other bug trackers like JIRA, GitHub, or Bugzilla. With just a single click you can turn every problem into a bug report in your favorite bug tracker and continue working on it there. As soon as you have linked a problem to your external bug tracker, Codetrails Error Analytics automatically synchronizes the problem’s status with your bug tracker and thus keeps your error reporters always up-to-date about the your progress in fixing the bug.


In this section you have learned the basics of error reports, problems, bugs and projects. You have also learned that you can use Codetrails Error Analytics both as a stand-alone bug tracker or integrated with your favorite bug tracker.

results matching ""

    No results matching ""