Skip to content

Commit

Permalink
Merge pull request #14680 from newrelic/sd-version-tracking-02
Browse files Browse the repository at this point in the history
fix(errors inbox): added version tracking
  • Loading branch information
homelessbirds authored Nov 2, 2023
2 parents 3d41adf + 745c5e9 commit 23e1136
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 0 deletions.
73 changes: 73 additions & 0 deletions src/content/docs/errors-inbox/version-tracking.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
title: 'Error tracking with errors inbox'
metaDescription: "Errors inbox is an error tracking solution designed to give you the tools to proactively detect, triage, and resolve errors across your full application stack."
---

import errorsinboxFilterErrorsbyVersions from 'images/errors-inbox_screenshot-crop_filter-errors-by-versions.webp'

import errorsinboxErrorDate from 'images/errors-inbox_screenshot-full_error-date.webp'

import errorsinboxErrorsInboxChangeTracking from 'images/errors-inbox_screenshot-crop_errors-inbox-change-tracking.webp'

Errors inbox version tracking allows developers to monitor each deployment to check for accuracy and success. Let's say you and your team get an alert that says one of your entities has a spike in its error rate. You identify the [source of the error](docs/tutorial-error-tracking/respond-outages/) and decide to release a canary deployment. You can use version tracking to monitor your fix as well as the previous deployments to determine if you solved the problem or if you need to go back to the drawing board.

<img
title="errors inbox change tracking"
alt="A screenshot that depicts error occurrences by version"
src={errorsinboxErrorsInboxChangeTracking}
/>

## Understand version tracking fields

Before you instrument version tracking, it's important to understand how errors inbox sorts your results. In APM and OpenTelemetry applications, when you're tracking errors the following event fields are checked and displayed _in this order_:

1. `service.version`
2. `tags.service.version`
3. `tags.releaseTag`
4. `tags.commit`

For mobile applications, the event field is `appVersion`.

For browser applications, the event field is `application.version`.

## Instrument version tracking

To capture data from our version tracking, you must configure fields for relevant entities:

* [For OpenTelemetry entities, configure `service.version`](/docs/more-integrations/open-source-telemetry-integrations/opentelemetry/best-practices/opentelemetry-best-practices-resources/).
* For APM entities, configure environment variables for APM entities.
* [Go](/docs/apm/agents/go-agent/api-guides/guide-using-go-agent-api/#error-fingerprinting)
* [Java](/docs/apm/agents/java-agent/api-guides/java-agent-api-register-error-group-callback-to-set-fingerprint/)
* [.NET](https://docs.newrelic.com/docs/apm/agents/net-agent/net-agent-api/seterrorgroupcallback-net-agent-api/)
* [Node.js](docs/apm/agents/nodejs-agent/api-guides/guide-using-nodejs-agent-api/#errors)
* [Python](/docs/apm/agents/python-agent/python-agent-api/seterrrorgroupcallback-python-agent-api/)
* [Ruby](/docs/apm/agents/ruby-agent/api-guides/sending-handled-errors-new-relic/#error-fingerprinting)
* [For mobile entities, configure `appVersion`](/docs/mobile-monitoring/new-relic-mobile/mobile-sdk/set-application-version/).
* [For browser entities, use `application.version`](/docs/browser/new-relic-browser/browser-apis/setApplicationVersion/).

## Filter by version
Once you have instrumented version tracking, your error groups will automatically capture data from each release. You can filter by each version.

To filter error groups with multiple versions, use the + operator to choose an `OR` condition.

<img
title="version tracking errors inbox"
alt="A screenshot depicting how to filter by versions in errors inbox. "
src={errorsinboxFilterErrorsbyVersions}
/>

You can use [change tracking](/docs/change-tracking/change-tracking-view-analyze/) to monitor your deployments. If you have done this, it's important to make sure that your deployments match the same version format you instrumented on your entities so you can match versions from your errors to your deployments.

## Find versions by error group

You can also click on an error group to see each deployment that matches the first and last seen dates for your error group. You will only see versions that were live within 30 minutes after your first seen date and within 30 minutes before your last seen date.

<img
title="error date"
alt="A screenshot depicting last seen date of errors"
src={errorsinboxErrorDate}
/>

You can dive deeper into your error groups by using the chart that shows each of your error occurrences grouped by version.

If you have also set up deployments with change tracking, you will see deployment markers on this chart. These markers indicate when each deployment was released. Click the marker to navigate to the deployment.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 2 additions & 0 deletions src/nav/errors-inbox.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ pages:
path: /docs/errors-inbox/error-users-impacted
- title: Errors inbox external services
path: /docs/errors-inbox/error-external-services
- title: Version tracking
path: /docs/errors-inbox/version-tracking
- title: Group errors
pages:
- title: APM group errors tab
Expand Down

0 comments on commit 23e1136

Please sign in to comment.