Change tracking allows you to capture changes, such as deployments, on any part of your system and use them to contextualize performance data. With this feature, you can:
- Record changes via API or configure your deployment pipelines to do it for you.
- View those changes as markers on charts for APM, browser, mobile, service level management, custom dashboards, and many more experiences across New Relic.
Our change analysis UIs provide details and insights about each of the changes you track, such as faceted errors, log attribute trends, related issues and anomalies, and calculated impacts on key signals. With these insights, you'll be able to understand the impact of changes on system performance and quality. Change tracking metadata, such as commit SHAs, changelogs, and deep links, will help you resolve issues more quickly.
To get acquainted with various aspects of change tracking, watch the video below or see our feature highlights. If you're ready to capture and analyze changes across your stack, see Start tracking changes.
Here's a six-minute video explaining change tracking.
To begin capturing and analyzing changes, make sure you have set up a free New Relic account if you haven't already.
After setting up an account, you can start recording changes (including deployments) to any part of your system in a growing number of automated and manual ways:
- NerdGraph (GraphQL) API: You can use GraphQL mutations to designate what changes to track and then run queries to list details about what you're tracking.
- New Relic CLI: Use our command line interface to designate what changes you want to track.
- Jenkins: Our plugin simplifies using Jenkins for tracking changes.
- GitHub Actions: We have tips about how to configure GitHub Actions in your CI/CD pipeline.
After you capture changes, use them to contextualize your telemetry, performance, and quality data. Learn more about this in How to view and analyze your changes in New Relic.
Keep your team informed about changes you're tracking by setting up a webhook.
Change tracking has a number of features that help you gauge the effects of changes in your systems.
Change tracking goes far beyond simple deployment tracking for services. You can also track changes in mobile apps, infrastructure hosts, workloads, and more.
Note that if you're using the old REST v2 APM deployments API, you need to migrate to our GraphQL API to start capturing changes on entity types besides APM services. If you switch to change tracking with the GraphQL API, you'll be able to leverage our current Jenkins and GitHub Actions integrations, as well as any future CI/CD integrations.
Our goal is to provide full-platform coverage for markers on charts, but some of the New Relic curated experiences don't yet feature interactive markers on all charts. In the meantime, you can still record changes on relevant entity types and build your own experience around that type using a custom dashboard.
Once you start capturing deployments and other changes to entities in your system, you'll automatically see interactive markers drawn on related charts in APM, mobile, browser, service level management, custom dashboards, and elsewhere. You'll also see entity sidebar options related to change tracking (for example, Deployments) popping up across New Relic.
Change tracking has powerful interfaces to help you quickly understand the impact a change has had on your system. Here are some tasks change tracking can help with:
- Want to see how many regressions or new error groups we detected since a change? For more about regressions, see errors inbox.
- Want to see what anomalous activity we identified since a change?
- Need to run a head-to-head comparison of changes to see if things are getting better or worse?
You can do these tasks (and more) with our new change tracking UIs. Read about the change tracking experience in How to view and analyze your changes in New Relic.
Every change you capture via change tracking APIs or integrations is stored in the New Relic database (NRDB). You can query deployment and change data using NRQL and NerdGraph. For examples of how to query for data about changes you have captured see Query change data.
Data stored in NRDB is immutable and as such, the markers you create cannot be deleted. The events created will be stored for 13 months by default.
With change tracking, you can leverage a growing list of API fields to connect your production telemetry to pre-production workflows, logically group deployments, and unlock fast and easy context sharing between teams.
For example, you can relate multiple deployments or other changes to one another using the
groupID attribute, or you can add a commit SHA, your changelog, or a deep link to your CI/CD platform.
You can see changes on parts of your system related to the entity you're looking at without switching contexts. By leveraging the New Relic entity relationships feature, you can automatically see changes to related entities drawn on charts alongside changes made to the central entity. For more on entity relationships, see this NerdGraph tutorial.