BugSnag automatically captures a variety of data to help you debug your errors. You may wish to avoid capturing some types of data, particularly if there are privacy implications for your users.
Information about the application can be useful to identify if an error occurs in certain versions.
Data | Default value | Preventing collection |
---|---|---|
Type | The primary app framework | Override the app_type property during BugSnag configuration |
Information about the device can be useful to identify if an error is only occurring on some devices.
Data | Default value | Preventing collection |
---|---|---|
Hostname | The hostname of the server | Override the hostname property during BugSnag configuration |
Runtime versions | The version of Ruby and supported frameworks in use | Modify metadata.device in a callback |
User information is used to show you which errors are impacting the most users. Set your own user identifiers if you want to be able to find errors affecting individual users.
Data | Default value | Preventing collection |
---|---|---|
Id | The remote_ip of the incoming request | Override the event’s user using a callback or custom middleware |
Details about the request can be helpful to reproduce errors.
This tab can be removed in its entirety using the clear_metadata
method within a middleware or callback.
Data | Default value | Preventing collection |
---|---|---|
URL | The requested URL in full | Filter url using redacted_keys |
HTTP Method | The method used by the request | Filter httpMethod using redacted_keys |
HTTP Version | The HTTP version used by the request | Filter httpVersion using redacted_keys |
Params | The query parameters and body supplied by the request | Filter params using redacted_keys |
Referer | The HTTP referer that originally accessed the resource | Filter referer using redacted_keys |
Client IP | The IP of the incoming request | Filter clientIp using redacted_keys |
Headers | Any headers provided by the request | Filter headers using redacted_keys |
Cookies | The cookies attached to the request | Filter cookies using redacted_keys . Filtered by default |
Body | The parsed request body if the request contained form data or JSON | Filter body using redacted_keys |
Capturing the request body requires it to be rewindable, which may not be the case when using Rack 3+.
Use the Rack::RewindableInput::Middleware
middleware to make all request bodies rewindable and therefore ensure BugSnag can always capture the request body as metadata.
Modifying error information may affect error grouping.
Data | Default value | Preventing collection |
---|---|---|
Error class | The exception’s class name | Override the error data within an event using a callback and the exceptions method |
Error message | The exception’s message | Override the error data within an event using a callback and the exceptions method |
Stack trace | A stack trace derived from the exception, containing code, filenames, methods and line numbers | Override the error data within an event using a callback and the exceptions method |
Context | The request method and path | Override the event’s context using a callback or custom middleware |
Information about the environment can be useful for finding platform or device issues.
The environment
tab will be populated with all environment data provided by Rack. The tab will only be collected if the configuration option send_environment
is set to true
.
Breadcrumbs contain information that can help you track down the root cause of errors.
BugSnag will automatically add a subscriber if the Mongo ruby driver gem is detected, allowing breadcrumbs to be captured with each transaction.
All breadcrumbs can be filtered as described in the discarding and amending breadcrumbs section.
A full list of the Mongo breadcrumbs and data captured can be found in the table below.
event id | breadcrumb message | type | captured metaData |
---|---|---|---|
succeeded |
Mongo query succeeded | PROCESS |
command_name , database_name , operation_id , request_id , duration , collection , filters |
failed |
Mongo query failed | PROCESS |
command_name , database_name , operation_id , request_id , duration , message , collection , filters |
The filters
metadata captured in a breadcrumb will only ever contain keys
used in a query, never values
.