Error grouping

Learn about how and why events are grouped into errors.

Bugsnag aims to group instances of the same event together to give you a clear view of which issues are having the biggest impact on your users whilst minimizing unnecessary noise.

In most cases the default grouping achieves this but if you would like to change the grouping behavior, Bugsnag provides a range of options as described below.

Grouping reasons

The reason an error is grouped is displayed on the error view.

Grouping reason

Top in-project stackframe

Grouped with other events sharing the same error class, file and line number of the top in-project stackframe of the innermost exception.

On most platforms the Bugsnag notifier will automatically detect in-project stackframes, but sometimes additional configuration is required to set the root directory of your project. See the docs for your platform.

Error class

Grouped with other events originating from the same error class of the innermost exception. The error classes can be configured in Project Settings > Group by error class.

This can be used to group certain errors that may occur from many different parts of your application. For example a database outage may generate DatabaseConnectionErrors from every location that you access the database, but they are all caused by the same issue.

Context

Grouped with other events sharing the same context that occur in any of the named error classes configured for the project. The error classes can be configured in Project Settings > Group by error context.

This can be used to group errors with the same cause that originate from the same part of your application. For example you may know that TimeoutErrors originating from one part of your application (one context) will all have the same cause.

Custom grouping hash

Grouped with other events sharing the same grouping hash. The grouping hash is set by configuring the Bugsnag notifier in your code. For specific instructions for configuring the grouping hash please see the documentation for your platform.

Using a custom grouping hash is for advanced users only and can be useful if you want fine-grained control over how errors are grouped.

Surrounding code (JavaScript only)

Grouped with other events originating from the same point in the code.

Method, file and line number (JavaScript only)

Grouped with other events originating from the same method, file and line number.

Script tag line (JavaScript only)

Grouped with other events caused from the same page location.

Script tag (JavaScript only)

Grouped with other events caused from the same script tag. This is used when no information is available about where the error occurred within the script.

Error class (JavaScript eval only)

Grouped with other events with the same error class when the script was evaluated using eval().

Line number (JavaScript only)

Grouped with other events sharing the same line number when the error is generated from a web worker.