Datadog is a monitoring service for cloud-scale applications, providing monitoring of servers, databases, tools, and services, through a SaaS-based data analytics platform.

When an event is triggered in Datadog, an alert is created. The information of the Datadog event is carried over.

OpsRamp configuration

Step 1: Install the integration

  1. From All Clients, select a client.
  2. Go to Setup > Account.
  3. Select the Integrations and Apps tile.
  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.
  6. Search for the application using the search option available. You can also use the All Categories option to search.
  7. Click ADD on the Datadog tile and click Install.
  8. Copy Tenant ID, Token and Webhook URL.
    These details are used while creating an HTTP Request template during Datadog configuration.

Step 2: Configure the integration

  1. From the API tab, enter:
    1. Map Attributes: Enter the mapping information for the third-party.
      1. Select the required OpsRamp property from the drop-down.
      2. Click Add Mapping Attributes to map attributes for the specific OpsRamp alert property.
      3. Enter the entity and property value.
  2. From the Monitoring of Integration tab, click Assign Templates.
    1. Select the IntgMonittool template.
    2. Click Assign Templates.
      Monitoring of Integrations
  3. From the Audit Logs, set up audit log criteria and time frame.

Property mappings

Datadog PropertyOpsRamp Property
eventTitleAlert subject
eventDetailsAlert description
dateAlert time
eventAlertTypeAlert state
Datadog Property ValueOpsRamp Property Value
errorCritical
successOk
eventAlertMetricAlert metric
eventHostNameAlert resource name

Example Datadog Webhook payload

{
   "id":"7432940494797260344",
   "eventTitle":"[P1] [Warn] [TEST] MacBook-Pro CPU load is high",
   "eventType":"query_alert_monitor",
   "evenAlertID":"385703",
   "eventAlertType":"warning",
   "eventHostName":"MacBook-Pro.local",
   "eventAlertMetric":"system.load.1",
   "eventAlertTitle":"[TEST] MacBook-Pro CPU load is high",
   "date":"1707300643000",
   "org":{
      "id":"887913",
      "name":"Intg Testing"
   },
   "eventDetails":{
      "email":"",
      "eventMsg":"\n@webhook-Alerts webhook-OpsRamp-Alerts\n\nTest notification triggered by james@gmail.com.\n\n[![Metric Graph](https://p.us5.datadoghq.com/snapshot/view/dd-snapshots-us5-prod/org_1300146780/2024-02-07/1c7553d2684e5e99a0e5d58ce5c160b2c0744ff3.png)](https://us5.datadoghq.com/monitors/385703?from_ts=1707299743000&to_ts=1707300943000&source=monitor_notif)\n\n**system.load.1** over **host:MacBook-Pro.local** was **>= 2.0** on average during the **last 5m**.\n\nThe monitor was last triggered at Wed Feb 07 2024 10:10:43 UTC.\n\n- - -\n\n[[Monitor Status](https://us5.datadoghq.com/monitors/385703?from_ts=1707299743000&to_ts=1707300943000&source=monitor_notif)] \u00b7 [[Edit Monitor](https://us5.datadoghq.com/monitors/385703/edit?source=monitor_notif)] \u00b7 [[View MacBook-Pro.local](https://us5.datadoghq.com/infrastructure?filter=MacBook-Pro.local&source=monitor_notif)] \u00b7 [[Show Processes](https://us5.datadoghq.com/process?from_ts=1707300343000&to_ts=1707300763000&live=false&showSummaryGraphs=true&sort=cpu%2CDESC&query=host%3AMacBook-Pro.local&source=monitor_notif)]\n",
      "eventTxtMsg":"\n@webhook-Alerts webhook-OpsRamp-Alerts\n\nTest notification triggered by james@gmail.com.\n\nsystem.load.1 over host:MacBook-Pro.local was >= 2.0 on average during the last 5m.\n\nMetric value: 0.0\n\nMetric Graph: https://us5.datadoghq.com/monitors/385703?from_ts=1707299743000&to_ts=1707300943000&source=monitor_notif \u00b7 Monitor Status: https://us5.datadoghq.com/monitors/385703?from_ts=1707299743000&to_ts=1707300943000&source=monitor_notif \u00b7 Edit Monitor: https://us5.datadoghq.com/monitors/385703/edit?source=monitor_notif \u00b7 View MacBook-Pro.local: https://us5.datadoghq.com/infrastructure?filter=MacBook-Pro.local&source=monitor_notif \u00b7 Show Processes: https://us5.datadoghq.com/process?from_ts=1707300343000&to_ts=1707300763000&live=false&showSummaryGraphs=true&sort=cpu%2CDESC&query=host%3AMacBook-Pro.local&source=monitor_notif \u00b7 Event URL: https://us5.datadoghq.com/event/event?id=7432940494797260344",
      "eventAggregKey":"72d144246a83751965ad27c96c8a3362",
      "eventAlertStatus":"system.load.1 over host:MacBook-Pro.local was >= 2.0 on average during the last 5m.",
      "eventUserName":"",
      "eventSnaoShot":"https://p.us5.datadoghq.com/snapshot/view/dd-snapshots-us5-prod/org_1300146780/2024-02-07/1c7553d2684e5e99a0e5d58ce5c160b2c0744ff3.png",
      "eventLink":"https://us5.datadoghq.com/event/event?id=7432940494797260344",
      "eventTags":"host:macbook-pro.local,monitor",
      "eventAlertQuery":"avg(last_5m):avg:system.load.1{host:MacBook-Pro.local} >= 4",
      "eventAlertScope":"",
      "last_updated":"1707300643000"
   }
}                

Datadog configuration

Step 1: Configure Webhook

Webhook allows you to connect with OpsRamp and alert OpsRamp when an event is triggered.

  1. Log in to Datadog.

  2. Click the Integrations icon and click Integrations.

  3. Configure Webhook and click Update Configuration to save the details.

    Webhook Configuration

    1. Name: Enter a name for Webhook. For example, OpsRamp-Alerts.
    2. URL: Enter the Webhook URL copied from OpsRamp.
      For example: https://<api-url>/integrations/alertsWebhook/client_1/alerts?vtoken=bOvr34Kh3Jm3eVJkmfBND7uJ9gyF72bL
    3. Use custom payload: Select the custom payload option.
    4. Custom payload: Enter the below payload
    5. Encode as form: Not Applicable.
    6. Header: Not Applicable.
      Note: You can configure the variables for the given payload.
      Example: ORG_ID
    Name and URL for Webhook Configuration

Custom payload syntax

{
    "id": "$ID",
    "eventTitle": "$EVENT_TITLE",
    "eventType": "$EVENT_TYPE",
    "evenAlertID": "$ALERT_ID",
    "eventAlertType": "$ALERT_TYPE",
    "eventHostName": "$HOSTNAME",
    "eventAlertMetric": "$ALERT_METRIC",
    "eventAlertTittle": "$ALERT_TITLE",
    "date": "$DATE",
    "org": {
        "id": "$ORG_ID",
        "name": "$ORG_NAME"
        },
    "eventDetails": {
        "email": "$EMAIL",
        "eventMsg": "$EVENT_MSG",
        "eventTxtMsg": "$TEXT_ONLY_MSG",
        "evenDatePost": "$DATE_POSIX",
        "eventAggregKey": "$AGGREG_KEY",
        "eventAlertStatys": "$ALERT_STATUS",
        "eventUserName": "$USERNAME",
        "eventSnaoShot": "$SNAPSHOT",
        "eventLink": "$LINK",
        "eventTags": "$TAGS",
        "eventLastUpdatedPosix": "$LAST_UPDATED_POSIX",
        "eventAlertQuery": "$ALERT_QUERY",
        "eventAlertScope": "$ALERT_SCOPE",
        "eventAlertCycleKey": "$ALERT_CYCLE_KEY",
        "last_updated": "$LAST_UPDATED"
        }
}

Step 2: Enable notifications

Notifications allow you to notify OpsRamp about an event.

  1. Click the Select Monitor icon and click Manage Monitors.
  2. Select the monitor that you want to enable the integration to OpsRamp and edit the settings. Configure the monitor details accordingly.
  3. In the Notify your team section, type @ to see the available list of Webhooks to trigger.
  4. Select the configured Webhook and specify notifications and restrictions for notification.
    Datadog Notifications
    Datadog Notifications

When a monitor alerts, a POST request is sent to the Webhook URL.