New Relic
New Relic is a performance tracking and analytics tool that helps engineers gain visibility into their software. By integrating New Relic with Cortex, you'll be able to drive deeper insights into:
Apdex
Dependencies
Embedded dashboards
Error rates
Live entities in your environment
OpenTelemetry
SLOs
Throughput
How to configure New Relic with Cortex
Prerequisite
Before getting started:
As a full platform user in New Relic, create a New Relic user key.
New Relic user keys are linked to the account they were created from, so if this account is ever deleted, the integration with Cortex will stop working.
Configure the integration in Cortex
In Cortex, navigate to the New Relic settings page:
In Cortex, click your avatar in the lower left corner, then click Settings.
Under "Integrations", click New Relic.
Click Add configuration.
Configure the New Relic integration form:
Account alias: Enter a name for this account.
Personal key: Enter the user key you generated in New Relic.
Account ID: Enter the ID for the account that the user key was generated with.
Use EU region: Optionally enable this toggle to use the EU region of New Relic.
Click Save.
Once you save your configuration, you'll see it listed on the integration's settings page in Cortex. If you’ve set everything up correctly, you’ll see the option to Remove Integration in Settings.
You can also use the Test all configurations button to confirm that the configuration was successful. If your configuration is valid, you’ll see a banner that says “Configuration is valid. If you see issues, please see documentation or reach out to Cortex support.”
Cross-account access
After setting up the integration, you will be redirected to the New Relic settings page where you can enable the cross-account access feature. If you have an account that supports subordinate accounts, you can enable this setting to fetch issues for all the accounts that are under the configured one.
Configure the integration for multiple New Relic accounts
The New Relic integration has multi-account support. You can add a configuration for each additional by repeating the process above.
Each configuration requires an alias, which Cortex uses to correlate the designated with registrations for various entities. Registrations can also use a default configuration without a listed alias. You can edit aliases and default configurations from the New Relic page in your Cortex settings. Select the edit icon next to a given configuration and toggle Set as default on. If you only have one configuration, it will automatically be set as the default.
How to connect Cortex entities to New Relic
Auto discovery
By default, Cortex will use the entity tag (e.g. my-entity
) or its name as the "best guess" for New Relic applications. For example, if your entity tag is my-entity
, then the corresponding application in New Relic should also be my-entity
. The name is not case-sensitive.
If your New Relic applications don’t cleanly match the Cortex entity tag or name, you can override this in the Cortex entity descriptor.
Dependencies
Cortex automatically maps dependencies between your services and resources by scanning for resources with specific New Relic tagKeys. By default, a service will have dependencies on any resource with New Relic tag key = "service" and tag value = the service's Cortex tag.
You can customize the tag key names on the New Relic settings page in Cortex.
The mappings to New Relic entities can also be defined by application IDs in the entity descriptor YAML (for APM applications).
Import entities from New Relic
See the Create services documentation for instructions on importing entities.
Editing the entity descriptor
APM services
New Relic application metrics can be fetched for each entity using application IDs or tags.
applications
Specifies that the APM service should be found by application ID
✓
applicationID
ID for the application that the service belongs to
✓
alias
Alias for the configuration in Cortex (only needed if you have opted into multi-account support)
tags
Specifies that the APM service should be found by tag
✓
tag
Tag key for the APM service(s)
✓
value
Tag value for the APM service(s)
✓
alias
Alias for the configuration in Cortex (only needed if you have opted into multi-account support)
Instructions to find your Application ID can be found in the New Relic docs. You can also find the Application ID in the URL in New Relic.
You can also find information on finding and managing entity tags in the New Relic docs.
OpenTelemetry
OpenTelemetry services can be associated with the entity only using tags. For this type of service New Relic doesn't generate application ID.
tags
Specifies that the OpenTelemetry service should be found by tag
✓
tag
Tag key for the APM service(s)
✓
value
Tag value for the APM service(s)
✓
alias
Alias for the configuration in Cortex (only needed if you have opted into multi-account support)
Cortex fetches OpenTelemetry data every 5 minutes, but the data refresh may take longer depending on how much data you have.
Embeds
Cortex can also embed dashboards from New Relic.
type
Specifies the source of the embed; in this case, should be newrelic
✓
url
URL for the dashboard
✓
SLOs
SLO can be fetched for each entity using New Relic entity GUID for respective SLO or associated service. Detailed instructions how to obtain entity GUID can be found in New Relic docs.
Fetched SLO information can be found in the Operations
and Integrations
sections of an entity page.
id
New Relic entity guid for the SLO or the associated service; if you use the GUID for a parent service, all SLOs associated with it will be imported into Cortex
true
alias
Alias for the configuration in Cortex (only needed if you have opted into multi-account support)
If the alias is not specified, like with the third ID above, Cortex will use the default configuration.
If you use the GUID for a parent service to define the SLOs for a given entity, Cortex will import all SLOs associated with that service.
Expected Results
Entity pages
When entities are tied to New Relic, SLO and monitoring information appear under the Monitoring section on the overview of the entity details page.
More data is available under the Monitoring page in the entity's sidebar:
Throughput
Response time
Error rate
Apdex target
Apdex score
Host count
Instance count
Concurrent instance count
In the SLOs section, you'll be able to see a list of all SLOs tied to that entity, along with the target and current SLO score. The SLO name will display in green when passing and orange when failing.
If you've defined dashboards in an entity's YAML, you'll be able to view the graphs from an entity's details page. Open the Dashboard page in the entity's sidebar. All dashboards defined in the descriptor will be embedded on this page.
New Relic dashboards must be defined individually for each entity.
Relationship graphs
Dependencies detected from New Relic will appear in Relationship graphs.
Scorecards and CQL
With the New Relic integration, you can create Scorecard rules and write CQL queries based on New Relic performance metrics.
See more examples in the CQL Explorer in Cortex.
OpenTelemetry metrics
OpenTelemetry metrics available in the New Relic Metrics Exlorer can be accessed or manipulated for a given entity by combining CQL and NRQL native query.
Still need help?
The following options are available to get assistance from the Cortex Customer Engineering team:
Email: help@cortex.io, or open a support ticket in the in app Resource Center
Chat: Available in the Resource Center
Slack: Users with a connected Slack channel will have a workflow added to their account. From here, you can either @CortexTechnicalSupport or add a
:ticket:
reaction to a question in Slack, and the team will respond directly.
Don’t have a Slack channel? Talk with your Customer Success Manager.
Last updated