New Relic is a SaaS offering that focuses on performance and availability monitoring.

OpsRamp configuration

Step 1: Install integration

  1. From All Clients, select a client.
  2. Go to Setup > Account.
  3. Select the Integrations and Apps tab.
  4. The Installed Integrations page, where all the installed applications are displayed. Note: If there are no installed applications, it will navigate to the Available Integrations and Apps page.
  5. Click + ADD on the Installed Integrations page. The Available Integrations and Apps page displays all the available applications along with the newly created application with the version.
  6. Search for the application using the search option available. Alternatively, use the All Categories option to search.
  7. Click ADD on the NewRelic tile.

Inbound (Optional):

NewRelic - Inbound configuration

To configure the inbound, follow these steps:
Authentication:

  1. Select the Authentication Type as Webhook.

    • Webhook: By default, Webhook is selected as the Authentication Type.
      Make a note of Tenant ID, Token and Webhook URL.
      These details are used while creating an HTTP Request template during NewRelic configuration.
  2. Map Attributes: Map OpsRamp entity attributes with NewRelic attributes.

    1. Click +Add from the Map Attributes section.

    2. From the Add Map Attributes window, enter the below information:

      • OpsRamp Entity: Select Alert from the dropdown.
      • OpsRamp Property: Select the OpsRamp property from the dropdown.
      • NewRelic Entity: Enter the NewRelic entity value in the box and click the +value from the dropdown to add it. You can add multiple values.
      • NewRelic Property: Enter the NewRelic property.

      Parsing Condition:

      1. Click +Add and provide the parsing condition:
      2. Select an operator from the dropdown and enter a value in the fields accordingly. Based on the operator selected, the fields vary.
      3. Click Save. Click +Add to add more conditions.

      Property Values:

      1. Click +Property Value.
      2. Enter a value in the NewRelic Property Value box and select the appropriate value from the OpsRamp Property Value dropdown.
        The options in the OpsRamp Property Value dropdown appear based on the OpsRamp Property selected.
      3. Click Save.
      • Click +Property Value to add more property values.

      Default Value: Alternatively, you can enter/select a default value in the box.

      Note: To map more attributes, click +Entity.

    3. Click Add Map Attributes. The mapped attributes list is added.

      • Click the three dots icon at the end of each row to edit or remove the map attributes.
      • Use the Filter option to filter the map attributes.

  3. Additional Settings: Select the Drop alerts from unmanaged resources checkbox if you do not want to trigger alerts from unmanaged resources.

  4. Enrich and Create Alert: Select a process definition from the dropdown. You can customize the incoming alerts according to the properties defined in the process definition.

  5. Click Finish.

The following table shows the attribute mappings.

Attributes can be modified at any time.

OpsRamp PropertyThird Party EntityThird Party Property
Alert subjectINCIDENTdetails
Alert descriptionINCIDENTdescription
Alert metricINCIDENTmetric
Alert stateINCIDENTseverity
Alert nameINCIDENTtargets[0].name
Alert timeINCIDENTtimestamp
Alert statusINCIDENTcurrent_state

New Relic configuration

Step 1: Configure a notification channel

  1. Log into New Relic.

  2. Add Destination, Go to Alerts & AI > Destinations > Add Webhook.

    Notification Channel
    Copy the URL from Opsramp Integration and paste it in the endpoint URL field.

  3. Add Destination, Go to Alerts & AI > Workflows > Add.

    Notification Channel

    Select filter conditions based on requirement. Select the channel as Webhook, under notify. Configure the details Channel Name: Enter channel name Destination : select the one created in the earlier step.

Example payload

{
 "description": {
  "account_id": "$ACCOUNT_ID",
  "\naccount_name": "$ACCOUNT_NAME",
  "\ncondition_id": "$CONDITION_ID",
  "\ncondition_name": "$CONDITION_NAME",
  "\ncurrent_state": "$EVENT_STATE",
  "\ndetails": "$EVENT_DETAILS",
  "\nevent_type": "$EVENT_TYPE",
  "\nincident_acknowledge_url": "<a href=$INCIDENT_URL>$INCIDENT_URL</a>",
  "\nincident_id": "$INCIDENT_ID",
  "\nincident_url": "$INCIDENT_URL",
  "\nowner": "$EVENT_OWNER",
  "\npolicy_name": "$POLICY_NAME",
  "\npolicy_url": "$POLICY_URL",
  "\nrunbook_url": "<a href=$RUNBOOK_URL>$RUNBOOK_URL</a>",
  "\nseverity": "$SEVERITY",
  "\ntargets": "$TARGETS",
  "\ntimestamp": "$TIMESTAMP"
 },
 "current_state": "$EVENT_STATE",
 "details": "$EVENT_DETAILS",
 "metric": "$POLICY_NAME",
 "severity": "$SEVERITY",
 "targets": "$TARGETS",
 "timestamp": "$TIMESTAMP"
}

New Version Payload

{
 "description": {
 "account_id": {{json nrAccountId}},
 "\naccount_name": "{{issueActivatedAtUtc}}",
 "\ncondition_id": {{json accumulations.conditionFamilyId.[0]}},
 "\ncondition_name": {{json accumulations.conditionName.[0] }},
 "\ncurrent_state": {{#if issueClosedAtUtc}} "closed" {{else if issueAcknowledgedAt}} "acknowledged" {{else}} "open"{{/if}},
 "\ndetails": {{json issueTitle}},
 "\nevent_type": "Alert",
 "\nincident_acknowledge_url": "<a href={{issueAckUrl}}</a>",
 "\nincident_id": {{json issueId}},
 "\nincident_url": {{json issuePageUrl}},
 "\nowner": {{json owner}},
 "\npolicy_name": {{json accumulations.policyName.[0]}},
 "\npolicy_url": {{#if policyUrl}} {{json policyUrl}}{{/if}},
 "\nrunbook_url": "<a href={{ accumulations.runbookUrl.[0] }}</a>",
 "\nseverity": {{json priority}},
 "\ntargets": {{json entitiesData.names.[0]}},
 "\ntimestamp": {{json createdAt}}
 },
 "current_state": {{#if issueClosedAtUtc}} "closed" {{else if issueAcknowledgedAt}} "acknowledged" {{else}} "open"{{/if}},
 "details": {{json issueTitle}},
 "metric": {{json accumulations.policyName.[0]}},
 "severity": {{json priority}},
 "targets":{{json entitiesData.names.[0]}},
 "timestamp": {{json createdAt}}
}

Note: These new fields are taken from the Newrelic documentation. Ref: Notification migration

Step 2: Define the alert policy

  1. Go to Alerts > Alert Policies.
  2. Enter the name of the policy as OpsRamp_Alert_Policy and click Create Policy.
  3. Click Create a Condition, and select APM, Application Metric.
  4. Click Next and select Targets.
  5. In Select target, select all applications Moodle, php, application, collaboration.net to name a few and click Next. The applications may be different for few clients, but Apdex is required for all the clients.
  6. Define the threshold to trigger an alert. The threshold is specific for each client.
  7. To test the process of alerting, set Apdex score below 0.98 for five minutes and click Create Condition.

After the alerting is successful, reset the score to the appropriate value in Apdex threshold for the specific environment. 8. Attach the policy to the notification channel. 9. To attach the policy click Add notification channels, select Webhook and click Update Policy.

Attach Alert Policy to Channel

In alerts browser, the source column displays a New Relic icon which indicates that the alert is from New Relic.