Xpect.io Integration Guide

Xpect.io targets the area conventionally served by heartbeat monitoring, pinging, and periodic ‘check-ins’ from your servers. By setting expectations, essentially small automated tests available in various languages (Python, Ruby, etc), you can be alerted whenever an expectation fails. Through Xpect.io’s integration with PagerDuty, a failed expectation will trigger a PagerDuty incident. PagerDuty can then alert the appropriate user or multi-user team via SMS, phone, email or iOS/Android push.

If you’re having trouble completing the installation, please contact us.

In Xpect.io

  1. After logging in, click on the Account Tab.
    xpect_account_tab
  2. Go to Manage Integrations.
    integrations_manage
  3. Click on the Alert with PagerDuty button.
    pd_click_to_authorize
  4. Enter your email and password, then click Authorize Integration.
    pd_authorize_xpect_fields
  5. Name your service from within this PagerDuty integration view and click Finish Integration to create it
    pd_xpect_finish
  6. Confirm that the integration is now set up.
    pd_key_confirmed
  7. Under the Menu tabs, click on New Expectation.
    Screen Shot 2014-04-24 at 1.23.53 PM
  8. Fill in the details for a new expectation. Enter a name and click Save. For testing purposes, you may want to temporarily choose a check-in time of 1 minute.
    expectation_edit
  9. Navigate to the Code icon (the double brackets).
    expectation_code
  10. Copy the code snippet in the language of your choice. This example will use curl.
    curl_code_arrow
  11. Run the copied command in the language of your choice (curl example shown below).
    console_curl
  12. Confirm that your test expectation has changed state, from “Waiting” to “Successful”.
    success_photo
  13. Wait for the predetermined amount of time for the test to fail and for the state to change from “Successful” to “Failed”.
    Screen Shot 2014-04-24 at 4.36.03 PM

In PagerDuty

Verify that the failed expectation in Xpect.io has successfully created an incident in PagerDuty.

  1. Under the Incidents Tab, search for a triggered incident with a “Failure” message triggered by your expectation.
    expectation_fail_pd
    Congratulations! Your integration has been verified.

FAQ

How do you configure Xpect.io to have multiple alerts that report to PagerDuty?

You can create multiple expectations within Xpect.io. Once any of them fail, as long as PagerDuty Notifications are enabled, PagerDuty will be alerted. However, the integration itself will limit you to one PagerDuty service per Xpect.io account.