---
title: New Relic
description: >-
  New Relic is an application monitoring service for web and mobile
  applications.
breadcrumbs: Docs > Integrations > New Relic
---

# New Relic

## Overview{% #overview %}

{% alert level="danger" %}
The New Relic APM integration is deprecated and has reduced functionality. APM metric labels are unavailable.
{% /alert %}

{% alert level="warning" %}
Effective March 01, 2025, NewRelic's REST API v2 no longer accepts REST API Keys.
In order to maintain functionality for this integration, replace your existing REST API key with a User API key in the integration configuration.
{% /alert %}



Connect to New Relic to see New Relic alerts in your event stream.

## Setup{% #setup %}

### New Relic alerts in event stream{% #new-relic-alerts-in-event-stream %}

Complete the following steps in **New Relic**.

1. On the "Alerts & AI" tab, navigate to "Notification Channels".

1. Select "New Notification Channel".

1. Select "Webhook" as the channel type.

1. Name your channel "Datadog".

1. Enter this base URL:

   ```text
   https://app.datadoghq.com/intake/webhook/newrelic?api_key=<DATADOG_API_KEY>
   ```

1. Click "Custom Payload" and ensure that the payload is in JSON format. **Note:** See section below for instructions on including custom tags in JSON.

1. Click "Create Channel".

1. Click "Alert Policies".

1. Select any alert policies for which you would like alerts to be sent into Datadog.

### Required Webhook Format{% #required-webhook-format %}

This section outlines the various types of New Relic alerts that can be processed in Datadog, detailing the required fields for each alert type. If any of the required fields are missing, the event wil be rejected and will not appear in the Event Explorer.

#### Deployment Notification{% #deployment-notification %}

If "deployment" is in the webhook payload, it will be treated as an INFO event.

Required fields:

1. created_at
1. revision
1. description
1. deployed_by
1. changelog

#### Alert{% #alert %}

If "alert" is in the webhook payload, the event type will be determined from the short description according to the following rules:

1. SUCCESS if one of "ended", "closed", or "recovered" is in the description
1. INFO if "acknowledged" is in the description
1. ERROR in all other cases

Required fields

1. short_description
1. message
1. alert_url
1. created_at
1. severity

#### Default{% #default %}

If the above criteria is not met, the severity field will be mapped to an alert type.

Required Fields:

1. account_id
1. account_name
1. condition_id
1. condition_name
1. current_state
1. details
1. event_type
1. incident_acknowledge_url
1. targets
1. incident_id
1. incident_url
1. policy_name
1. policy_url
1. severity - This field must be one of info, warn, or critical. It wil be mapped to an event type of info, warning, and error.
1. timestamp

### Include custom tags on beta alerts{% #include-custom-tags-on-beta-alerts %}

You can include custom tags with the "Use Custom Payload" option through New Relic's Beta Alerts feature. To configure this, navigate to your New Relic account, and click the 'Alerts Beta' button in the upper right-hand corner of the screen. Then, select the 'Notification channels' section and find the Webhook you've setup for Datadog. From here there should be a section called 'Use Custom Payload', and once selected, it expands to reveal a JSON payload. You need to modify this payload by adding a "tags" attribute. For example, a modified payload might look like this:

```json
{
    "account_id": "$ACCOUNT_ID",
    "account_name": "$ACCOUNT_NAME",
    "condition_id": "$CONDITION_ID",
    "condition_name": "$CONDITION_NAME",
    "current_state": "$EVENT_STATE",
    "details": "$EVENT_DETAILS",
    "event_type": "$EVENT_TYPE",
    "incident_acknowledge_url": "$INCIDENT_ACKNOWLEDGE_URL",
    "incident_id": "$INCIDENT_ID",
    "incident_url": "$INCIDENT_URL",
    "owner": "$EVENT_OWNER",
    "policy_name": "$POLICY_NAME",
    "policy_url": "$POLICY_URL",
    "runbook_url": "$RUNBOOK_URL",
    "severity": "$SEVERITY",
    "targets": "$TARGETS",
    "timestamp": "$TIMESTAMP",
    "tags": ["application:yourapplication", "host:yourhostname", "sometag"]
}
```

After your modifications are complete, select **Update Channel** to save your changes.

## Data Collected{% #data-collected %}

### Metrics{% #metrics %}

|  |
|  |
| **new\_relic.apdex.score**(gauge)                                                       | Ratio of satisfactory response times to unsatisfactory response times*Shown as apdex*                                         |
| **new\_relic.application\_summary.apdex\_score**(gauge)                                 | Ratio of satisfactory response times to unsatisfactory response times*Shown as apdex*                                         |
| **new\_relic.application\_summary.apdex\_target**(gauge)                                | Threshold ratio of satisfactory response times to unsatisfactory response times*Shown as apdex*                               |
| **new\_relic.application\_summary.concurrent\_instance\_count**(gauge)                  | Number of concurrent instances serving the application*Shown as instance*                                                     |
| **new\_relic.application\_summary.error\_rate**(gauge)                                  | Ratio of the number of errors reported by the application to the total number of served requests*Shown as percent*            |
| **new\_relic.application\_summary.host\_count**(gauge)                                  | Number of hosts serving the application*Shown as host*                                                                        |
| **new\_relic.application\_summary.instance\_count**(gauge)                              | Number of instances serving the application*Shown as instance*                                                                |
| **new\_relic.application\_summary.response\_time**(gauge)                               | Application response time*Shown as millisecond*                                                                               |
| **new\_relic.application\_summary.throughput**(gauge)                                   | Number of requests served by the application*Shown as request*                                                                |
| **new\_relic.database.all.average\_exclusive\_time**(gauge)                             | Average time spent in database queries, exclusive of any time instrumented by other metrics*Shown as millisecond*             |
| **new\_relic.errors.all.errors\_per\_minute**(gauge)                                    | Number of errors reported by the application*Shown as error*                                                                  |
| **new\_relic.web\_transaction.average\_response\_time**(gauge)                          | Average response time of web transactions served by the application*Shown as second*                                          |
| **new\_relic.web\_transaction.requests\_per\_minute**(gauge)                            | Number of web transaction requests served by the application*Shown as request*                                                |
| **new\_relic.synthetics\_summary.monitors.count**(gauge)                                | Count of monitors*Shown as monitor*                                                                                           |
| **new\_relic.synthetics\_summary.monitors.frequency**(gauge)                            | Frequency of the monitor*Shown as minute*                                                                                     |
| **new\_relic.synthetics\_summary.locations.count**(gauge)                               | Count of locations associated with the monitor*Shown as location*                                                             |
| **new\_relic.synthetic\_check.duration**(gauge)                                         | Total time for the monitor run*Shown as millisecond*                                                                          |
| **new\_relic.synthetic\_check.total\_request\_body\_size**(gauge)                       | Size of the body request to the server*Shown as byte*                                                                         |
| **new\_relic.synthetic\_check.total\_request\_header\_size**(gauge)                     | Size of the header request to the server*Shown as byte*                                                                       |
| **new\_relic.synthetic\_check.total\_response\_header\_size**(gauge)                    | Size of the response header returned by the server*Shown as byte*                                                             |
| **new\_relic.synthetic\_check.total\_response\_body\_size**(gauge)                      | Size of the response body returned by the server*Shown as byte*                                                               |
| **new\_relic.synthetic\_check.count**(count)                                            | Count of monitor runs (use result tag to select only successes or failures)*Shown as check*                                   |
| **new\_relic.synthetic\_check.errors**(count)                                           | Count of individual request errors (not check failures)*Shown as error*                                                       |
| **new\_relic.synthetic\_request.count**(count)                                          | Count of requests*Shown as request*                                                                                           |
| **new\_relic.synthetic\_request.duration\_blocked.average**(gauge)                      | Average time the requests were blocked*Shown as millisecond*                                                                  |
| **new\_relic.synthetic\_request.duration\_connect.average**(gauge)                      | Average time the requests were establishing a connection*Shown as millisecond*                                                |
| **new\_relic.synthetic\_request.duration\_dns.average**(gauge)                          | Average time the requests were resolving DNS*Shown as millisecond*                                                            |
| **new\_relic.synthetic\_request.duration\_receive.average**(gauge)                      | Average time the requests were receiving data*Shown as millisecond*                                                           |
| **new\_relic.synthetic\_request.duration\_send.average**(gauge)                         | Average time the requests were sending data*Shown as millisecond*                                                             |
| **new\_relic.synthetic\_request.duration\_ssl.average**(gauge)                          | Average time establishing an SSL connection*Shown as millisecond*                                                             |
| **new\_relic.synthetic\_request.duration\_wait.average**(gauge)                         | Average time the requests were waiting*Shown as millisecond*                                                                  |
| **new\_relic.synthetic\_request.resources\_load\_time**(gauge)                          | Average resources load time*Shown as millisecond*                                                                             |
| **new\_relic.synthetic\_request.time\_spent\_third\_parties**(gauge)                    | Average time spent by third parties*Shown as millisecond*                                                                     |
| **new\_relic.apm\_mobile.mobile\_application\_summary.active\_users**(gauge)            | The number of active users for a mobile application*Shown as user*                                                            |
| **new\_relic.apm\_mobile.mobile\_application\_summary.launch\_count**(count)            | The number of mobile applications launched*Shown as execution*                                                                |
| **new\_relic.apm\_mobile.mobile\_application\_summary.throughput**(gauge)               | Throughput for a mobile application*Shown as request*                                                                         |
| **new\_relic.apm\_mobile.mobile\_application\_summary.response\_time**(gauge)           | Mobile application response time*Shown as millisecond*                                                                        |
| **new\_relic.apm\_mobile.mobile\_application\_summary.calls\_per\_session**(gauge)      | Number of calls per session*Shown as invocation*                                                                              |
| **new\_relic.apm\_mobile.mobile\_application\_summary.interaction\_time**(gauge)        | Interaction time for a mobile application*Shown as millisecond*                                                               |
| **new\_relic.apm\_mobile.mobile\_application\_summary.failed\_call\_rate**(gauge)       | Percentage of failed calls for a mobile application*Shown as percent*                                                         |
| **new\_relic.apm\_mobile.mobile\_application\_summary.remote\_error\_rate**(gauge)      | Percentage of remote error for a mobile application*Shown as percent*                                                         |
| **new\_relic.apm\_mobile.mobile\_application\_summary.unresolved\_crash\_count**(count) | Number of unresolved crash count for a mobile application*Shown as execution*                                                 |
| **new\_relic.apm\_mobile.mobile\_application\_summary.crash\_count**(count)             | Crash count for a mobile application*Shown as execution*                                                                      |
| **new\_relic.apm\_mobile.mobile\_application\_summary.crash\_rate**(gauge)              | Crash rate for a mobile application*Shown as percent*                                                                         |
| **new\_relic.apm\_mobile.mobile.crash.all.call\_count**(count)                          | Total numbers of crashed calls*Shown as execution*                                                                            |
| **new\_relic.apm\_mobile.session.start.call\_count**(count)                             | Number of started calls for a session*Shown as invocation*                                                                    |
| **new\_relic.apm\_mobile.mobile.failed\_call\_rate.call\_count**(count)                 | Failed call rate count for a mobile application*Shown as invocation*                                                          |
| **new\_relic.apm\_mobile.session.duration.call\_count**(count)                          | Number of call counts for a session*Shown as invocation*                                                                      |
| **new\_relic.apm\_mobile.cpu.user.utilization.percent**(gauge)                          | User space CPU usage utilization*Shown as percent*                                                                            |
| **new\_relic.apm\_mobile.cpu.system.utilization.percent**(gauge)                        | Kernel space CPU usage utilization*Shown as percent*                                                                          |
| **new\_relic.web\_transaction\_total\_time.average\_response\_time**(gauge)             | Average response time of web transactions served by the application*Shown as second*                                          |
| **new\_relic.web\_transaction\_total\_time.requests\_per\_minute**(gauge)               | Number of web transaction requests served by the application*Shown as request*                                                |
| **new\_relic.web\_transaction\_total\_time.calls\_per\_minute**(gauge)                  | Number of calls served by the application*Shown as invocation*                                                                |
| **new\_relic.web\_transaction\_total\_time.min\_response\_time**(gauge)                 | Minimum response time of web transactions served by the application*Shown as second*                                          |
| **new\_relic.web\_transaction\_total\_time.max\_response\_time**(gauge)                 | Maximum response time of web transactions served by the application*Shown as second*                                          |
| **new\_relic.web\_transaction\_total\_time.total\_call\_time\_per\_minute**(gauge)      | Total time, in second per minute, spent in web application transactions*Shown as fraction*                                    |
| **new\_relic.web\_transaction\_total\_time.standard\_deviation**(gauge)                 | Standard deviation of the response time of web transactions served by the application*Shown as second*                        |
| **new\_relic.web\_transaction\_total\_time.average\_exclusive\_time**(gauge)            | Average time spent in web application transactions, exclusive of any time instrumented by other metrics*Shown as millisecond* |
| **new\_relic.web\_transaction\_total\_time.average\_value**(gauge)                      | Average response time over all instances in the call count*Shown as second*                                                   |

## Troubleshooting{% #troubleshooting %}

Need help? Contact [Datadog support](https://docs.datadoghq.com/help/).
