Pingdom
Overview
Pingdom allows you to monitor your servers by sending regular ping responses to an endpoint. This Zeleo Application allows you to setup Pingdom to send server status change events to Zeleo and allow you to react to them as you desire.
An example use of this would be to trigger a server reboot when a ‘DOWN’ message is sent, or send text messages to anyone in Zeleo tagged as ‘DevOps’ to notify of the service outage.
Setup
Pingdom
The first thing you will need to do is sign up with Pingdom if you have no already. Once you are in, perform the following steps:
- Click on the
Integrationstab and seectIntegrations. - Click
Add Integrationand give your integration a name.Zeleo Applicationis a good default. - Paste the following URL into the
URLfield:
https://7jsl4psyr5.execute-api.us-east-1.amazonaws.com/prod/event
- Make sure the
Activebox is checked, and clickSave integration.

You will now be able to use this with any monitoring tool Pingdom offers to notify Zeleo when an event occurs.
The following shows you how to configure an uptime check as an example. Other checks are available as well.
- On the side panel, select
Experience MonitoringandUptime. - Select
Add New. - Give the check a name, and in
URLenter a URL that you will use to specify whether the server you would like to monitor is up. The service will fail unless this endpoint returns a 200, and the URL must accept a POST. - At the bottom of this dialog, make sure the
Zeleo Applicationintegration is checked.

Now Zeleo will receive the event whenever your server changes state (either goes down or comes up).
Zeleo
You now can use Zeleo to react to this event as you see fit.
- The first thing you need to do is enable the
Zeleo Pingdom Applicationfor your team. Select yourManage Teamdialog. - In the
Applicationstab, select the plus symbol next to thePingdomapplication.

- Next you need to specify who in Zeleo will listen to your Pingdom event. Remember each Zeleo event must have a person who is the focus of this event.
- Open your
Profiledialog in Zeleo and select theApplicationstab. - Copy/paste the URL you set your Pingdom check to monitor. Zeleo uses this to identify the event as yours and specify the Zeleo user who will listen to the event.
- Click the checkbox next to the field to save, and you should be set!

You can create a rule condition to handle this event now.
- Open the side panel in
Zeleoand selectRules & Conditions. - Click the
+button to create a new rule. - Give the rule a
Nameand optionally aDescription. - Under the
Select Conditiondropdown, choosePingdomand select theCheck Notificationevent. There’s only one event from Pingdom, so that part is easy.

- Click the
three dotson the right of your condition to define fields. - Select
Full URLand choosePersonfrom the drop down on the right.- This sets the person we are taking about in the rule to be the person who has the URL of the event set in their profile. That’s the last thing we did in the previous configuration.

- At its most basic, that’s it! Now whenever you get a Pingdom event, the rule will be triggered for the person who has the URL in their profile. You can send tasks, notifications, etc, to that person or anyone else by how they are related to that person.
- You can fine tune the event as well- take a look at the fields available from the Pingdom event to further customize your Zeleo rule.

Events
There’s one event that Zeleo accepts from Pingdom, and all fields in the Webhook are available to you for rules and templates.
This is a sample of the event that Zeleo receives; all fields are available to filter in the Rule Builder.
{
"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",
"importance_level": "HIGH",
"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",
"version": 1
}
}
Consequences
No consequences are defined by this Zeleo Application.