Pingdom Integration

Pingdom is a popular website uptime and performance monitoring service. Pingdom monitors websites and servers that are accessible from the Internet, from multiple locations on the Internet.

What does Opsgenie offer Pingdom users?

Opsgenie's Pingdom integration enables Pingdom users to take advantage of Opsgenie's advanced alert & notifications management capabilities such as escalations, on-call schedule management, and extensive alert notification controls.

Functionality of the integration

  • When an alert is created in Pingdom, an alert is also created in Opsgenie automatically through the integration.
  • When the alert is closed in Pingdom, the related alert is also closed in Opsgenie.

Add Pingdom Integration in Opsgenie

  1. Please create an Opsgenie account if you haven't done so already.
  2. Go to Opsgenie's Pingdom Integration page.

For Free and Essentials plans, you can only add the integrations from the Team Dashboards, please use the alternative instructions given below to add this integration.

  1. Specify who is notified of Pingdom alerts using the Teams field. Auto-complete suggestions are provided as you type.

An alternative for Step 2) and Step 3) is to add the integration from the Team Dashboard of the team which will own the integration. To add an integration directly to a team, navigate to the Team Dashboard and open Integrations tab. Click Add Integration and select the integration that you would like to add.

  1. Copy the Webhook URL.
  2. Click Save Integration.

Configuration in Pingdom

  1. Go to the Pingdom dashboard.
  2. Click Integrations > Integrations > Add integrations.
  1. Select Webhook as integration "Type".
  2. Enter a valid name into "Webhook name" field.
  3. Paste Webhook URL into the "Webhook URL" field.
  4. Make sure "Active" field is checked.
  1. Click Save integration
  1. Opsgenie Webhook integration is ready to use into "Uptime" and "Transaction" checks.
  2. Make sure Opsgenie Webhook integration is enabled at "Check" settings.

Advanced Configuration Settings in Opsgenie

Sample payloads sent from Pingdom Close

HTTP check [POST]:

{
  "check_id": 12345,
  "check_name": "Name of HTTP check",
  "check_type": "HTTP",
  "check_params": {
    "basic_auth": false,
    "encryption": true,
    "full_url": "https://www.example.com/path",
    "header": "User-Agent:Pingdom.com_bot",
    "hostname": "www.example.com",
    "ipv6": false,
    "port": 443,
    "url": "/path"
  },
  "tags": [
    "example_tag"
  ],
  "previous_state": "UP",
  "current_state": "DOWN",
  "state_changed_timestamp": 1451610061,
  "state_changed_utc_time": "2016-01-01T01:01:01",
  "long_description": "Long error message",
  "description": "Short error message",
  "first_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Stockholm, Sweden"
  },
  "second_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Austin, US"
  }
}

Ping check [POST]:

{
  "check_id": 12345,
  "check_name": "Name of Ping check",
  "check_type": "PING",
  "check_params": {
    "hostname": "www.example.com",
    "basic_auth": false,
    "ipv6": false
  },
  "tags": [
    "example_tag"
  ],
  "previous_state": "UP",
  "current_state": "DOWN",
  "state_changed_timestamp": 1451610061,
  "state_changed_utc_time": "2016-01-01T01:01:01",
  "long_description": "Long error message",
  "description": "Short error message",
  "first_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Stockholm, Sweden"
  },
  "second_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Austin, US"
  }
}

IMAP check [POST]:

{
  "check_id": 12345,
  "check_name": "Name of IMAP check",
  "check_type": "IMAP",
  "check_params": {
    "hostname": "www.example.com",
    "basic_auth": false,
    "encryption": false,
    "ipv6": false,
    "port": 143
  },
  "tags": [
    "example_tag"
  ],
  "previous_state": "UP",
  "current_state": "DOWN",
  "state_changed_timestamp": 1451610061,
  "state_changed_utc_time": "2016-01-01T01:01:01",
  "long_description": "Long error message",
  "description": "Short error message",
  "first_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Stockholm, Sweden"
  },
  "second_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Austin, US"
  }
}

Transaction check [POST]:

{
  "check_id": 12345,
  "check_name": "Name of transaction check",
  "check_type": "TRANSACTION",
  "check_params": {
    "encryption": true,
    "port": 443,
    "url": "https://www.example.com/"
  },
  "tags": [
    "example_tag"
  ],
  "previous_state": "FAILING",
  "current_state": "SUCCESS",
  "state_changed_timestamp": 1451610061,
  "state_changed_utc_time": "2016-01-01T01:01:01",
  "description": "Error message",
  "first_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Stockholm, Sweden"
  },
  "second_probe": {
    "ip": "123.4.5.6",
    "ipv6": "2001:4800:1020:209::5",
    "location": "Austin, US"
  }
}

Sample alert