Catchpoint Integration Guide

Catchpoint allows you to manage, monitor, and test the performance of online applications. Follow the instructions below to configure your Catchpoint with PagerDuty.

In PagerDuty

  1. Go to the Configuration menu and select Services.

  2. On the Services page:

    • If you are creating a new service for your integration, click Add New Service.

    • If you are adding your integration to an existing service, click the name of the service you want to add the integration to. Then click the Integrations tab and click the New Integration button.

  3. Select your app from the Integration Type menu and enter an Integration Name.

    If you are creating a new service for your integration, in General Settings, enter a Name for your new service. Then, in Incident Settings, specify the Escalation Policy, Notification Urgency, and Incident Behavior for your new service.

  4. Click the Add Service or Add Integration button to save your new integration. You will be redirected to the Integrations page for your service.

  5. Copy the Integration Key for your new integration.

In Catchpoint

  1. Go to the Settings menu and select API.

  2. Set the Alerts API status to Enabled, the Status to Active, and Endpoint URL to:
    https://events.pagerduty.com/generic/2010-04-15/create_event.json

  3. Select Template from the Format options.

  4. Click Add new in the template selection drop down menu. (Existing templates can be edited in the menu by hovering over the template name and selecting the “Edit/View Properties” icon.)

  5. A lightbox will pop-up where you can create a name for the template and define the contents. The content should be valid JSON and should include the required fields described below.

    PagerDuty expects valid JSON and has three required fields: service_key, event_type, and description. Additional parameters that can be passed can be found on our Events API documentation.

    Alert Macro Usage

    The JSON fields can be hardcoded as well as filled in dynamically with data provided from the system. This includes data like the test name, the alert severity, conditions that triggered the alert, location of the node for which a test run caused an alert to trigger, etc. An example use for the Alert API Template to provide the timestamp and severity level for an alert in JSON where macros are used with the following syntax: ${macroName}.

    { 
    "service_key": "YOUR-INTEGRATION-KEY-HERE",
    "event_type": "${switch("${NotificationLevelId}","0","trigger","1","trigger","3","resolve")}",
    "description": "${switch("${NotificationLevelId}","0","WARNING","1","CRITICAL","3","OK")}: ${TestUrl}",
    "incident_key": "${AlertInitialTriggerDateUtc}",
    "client": "${TestName}",
    "client_url": "${TestUrl}",
    "details": {
    "NodeName": "${NodeDetails("${NodeName}")}",
    "NodeClientAddress": "${NodeDetails("${NodeClientAddress}")}",
    "NodeMean": "${NodeDetails("${NodeMean}")}",
    "Test Name": "${TestName}",
    "Test URL": "${TestUrl}"
    }
    }

    Alert Macro Index

    A list of all the supported alert macros can be found in the Catchpoint Knowledge Base.

    Note: You must log in to your Catchpoint account to access their knowledge base.

FAQ

Can Catchpoint integrate with multiple PagerDuty services?

Yes. Catchpoint can route different alerts to separate PagerDuty services by sending specific alerts to different endpoints.

Will incidents triggered by Catchpoint automatically resolve?

Yes. Catchpoint can auto resolve PagerDuty incidents by applying the switch statement within the event_type field to send a resolve when the notification level is 3 or Improved.