Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours scrolling social media and waste money on things we forget, but won’t spend 30 minutes a day earning certifications that can change our lives.
Master in DevOps, SRE, DevSecOps & MLOps by DevOpsSchool!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

Step by Step guide to correctly create alerts via New Relic API


curl -X GET 'https://api.newrelic.com/v2/applications.json'   -H 'Api-Key: NRAK-3T8WTXSP4KJSLMG74WHR5I3SSY9'   -H 'Content-Type: application/json'

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   799    0   799    0     0    809      0 --:--:-- --:--:-- --:--:--   811{"applications":[{"id":1508171253,"name":"devopsschool","language":"java","health_status":"red","reporting":false,"settings":{"app_apdex_threshold":0.5,"end_user_apdex_threshold":7.0,"enable_real_user_monitoring":true,"use_server_side_config":false},"links":{"application_instances":[],"servers":[],"application_hosts":[]}}],"links":{"application.servers":"/v2/servers?ids={server_ids}","application.server":"/v2/servers/{server_id}","application.application_hosts":"/v2/application/{application_id}/hosts?ids={host_ids}","application.application_host":"/v2/application/{application_id}/hosts/{host_id}","application.application_instances":"/v2/application/{application_id}/instances?ids={instance_ids}","application.application_instance":"/v2/application/{application_id}/instances/{instance_id}"}}
Code language: JavaScript (javascript)

Here’s a step-by-step guide to correctly create alerts via New Relic API, with proper handling of:

  • type
  • condition_scope
  • entities
  • metric

This will help you avoid common errors like using the wrong entity type or unsupported metrics.


✅ STEP-BY-STEP GUIDE TO NEW RELIC ALERT API SETUP


🔹 STEP 1: Decide the Alert Use Case

What are you monitoring?

Use CaseAPI TypeDomainScope/Condition
App performance (APM)apm_app_metricAPMcondition_scope: application
Infrastructure (host, containers)infra_metricINFRAwhere_clause
Browser monitoringbrowser_metricBROWSERapplication
Synthetics (Ping/API checks)syntheticsSYNTHper monitor
Custom metricsuser_defineddependsAPM only

🔹 STEP 2: Find the Correct Entity (ID or GUID)

🔸 For APM App: Use numeric App ID

curl -X GET 'https://api.newrelic.com/v2/applications.json' \
  -H 'Api-Key: YOUR_API_KEY'
Code language: JavaScript (javascript)

Use id from the output in entities: [YOUR_APP_ID].

🔸 For Infrastructure (Host): Use hostname or tag via where_clause


🔹 STEP 3: Choose the Right type, condition_scope, and metric

✅ APM (Application Metrics)

curl -X POST 'https://api.newrelic.com/v2/alerts_conditions/policies/<policy_id>.json' \
  -H 'Api-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "condition": {
      "type": "apm_app_metric",
      "name": "Error Rate Alert",
      "enabled": true,
      "condition_scope": "application",
      "entities": [1508171253],
      "metric": "error_percentage",
      "terms": [
        {
          "duration": "5",
          "operator": "above",
          "priority": "critical",
          "threshold": "5",
          "time_function": "all"
        }
      ]
    }
  }'
Code language: PHP (php)

Allowed APM Metrics:

  • apdex
  • error_percentage
  • response_time_web
  • response_time_background
  • throughput_web
  • throughput_background

✅ Infrastructure Host Metrics

curl -X POST 'https://api.newrelic.com/v2/alerts_conditions.json' \
  -H 'Api-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "condition": {
      "type": "infra_metric",
      "name": "High CPU Usage on Host",
      "enabled": true,
      "policy_id": 6269799,
      "event_type": "SystemSample",
      "select_value": "cpuPercent",
      "comparison": "above",
      "critical_threshold": {
        "value": 80,
        "duration_minutes": 5,
        "time_function": "all"
      },
      "where_clause": "hostname = '\''ip-10-0-0-1'\''"
    }
  }'
Code language: PHP (php)

Common Infra Metrics (event_type: SystemSample)

  • cpuPercent
  • memoryUsedBytes
  • diskUsedPercent
  • loadAverageOneMinute

✅ Synthetics Monitor Example

curl -X POST 'https://api.newrelic.com/v2/alerts_synthetics_conditions/policies/<policy_id>.json' \
  -H 'Api-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "synthetics_condition": {
      "name": "Ping Failure",
      "monitor_id": "your-monitor-id",
      "enabled": true,
      "runbook_url": "",
      "terms": [
        {
          "duration": "5",
          "operator": "above",
          "priority": "critical",
          "threshold": "0",
          "time_function": "all"
        }
      ]
    }
  }'
Code language: PHP (php)

🔹 STEP 4: Test the Entity Type (Optional)

If unsure whether an entity is valid for APM alert:

{
  actor {
    entity(guid: "GUID_HERE") {
      name
      domain
      type
      guid
    }
  }
}
Code language: JavaScript (javascript)

Use via: https://api.newrelic.com/graphiql


📘 Summary Reference Table

Monitoring TargetAPI typeMetric SourceEntity/Where
APM Appapm_app_metricApp-level (error_percentage, etc.)entities: [APP_ID]
Host (infra)infra_metricHost-level (cpuPercent, memoryUsed)where_clause
Browser appbrowser_metricPage load, JS errorsApp ID
SyntheticssyntheticsMonitor failure % or durationMonitor ID
Custom metricsuser_definedCustom instrumented metricsAPM app ID

Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x