No results for ""
EXPAND ALL
  • Home
  • API docs

PagerDuty for Guardian Edition

Read time: 3 minutes
Last edited: Nov 26, 2024
The PagerDuty for Guardian Edition integration is a Guardian Edition feature

PagerDuty for Guardian Edition is available to customers on a Guardian Edition plan. To learn more, read about our pricing. To upgrade your plan, contact Sales.

Overview

This topic explains how to use the LaunchDarkly PagerDuty integration for guarded rollouts.

You can use guarded rollouts to notify you or automatically roll back changes that have a negative effect on your app's performance. The PagerDuty integration for Guardian Edition lets you send alerts to PagerDuty when LaunchDarkly detects a regression, and resolve incidents when a rollout is rolled back.

There are two ways to route alerts to the correct service in PagerDuty: by using PagerDuty's Event Orchestration, or by adding the integration directly to the service.

We recommend using Event Orchestration routing rules. This option lets you:

  • Route to different services based on alert content (works with any PagerDuty license level)
  • Use one configuration on the PagerDuty side for multiple LaunchDarkly projects
  • Assign different severity based on content (requires PagerDuty AIOps)
  • Change severity based on other factors inside of your PagerDuty environment (requires PagerDuty AIOps)
  • Use dynamic routing based on content (requires PagerDuty AIOps)

To learn more, read PagerDuty's documentation on Event Orchestration and how to set it up.

After you set up Event Orchestration to route events to your PagerDuty services, you can copy the integration key from the Integrations section of this Event Orchestration. You need this integration key to configure the integration in LaunchDarkly.

Option 2 - Add the LaunchDarkly integration to a PagerDuty service

In PagerDuty, add the LaunchDarkly integration to a PagerDuty service by following the instructions at Add integrations to an existing service. After you have added the integration, copy the Integration key to use in the next step.

You need to add the LaunchDarkly integration to a PagerDuty service only once, even if you are configuring multiple integrations to target that service in LaunchDarkly.

Configure the PagerDuty integration in LaunchDarkly

To set up the integration, you must first obtain an Integration Key from PagerDuty, then configure the integration in LaunchDarkly.

To configure the PagerDuty for Guardian Edition integration in LaunchDarkly:

  1. Navigate to the Integrations page and find "PagerDuty - Guardian Edition."
  2. Click Add integration. The "Create PagerDuty configuration" panel appears.
  3. Give the integration a human-readable Name.
  4. Add the PagerDuty integration key you copied from the previous step.
  5. (Optional) If you want to send events to PagerDuty from a specific environment only, select an environment in the Project and environment filters menu.
  6. Select event types in the Events filter to send to PagerDuty:
  • Measured rollout regression detected: PagerDuty alerts you when a regression is detected on a rollout.
  • Measured rollout reverted: PagerDuty resolves any related incidents when a rollout is manually or automatically rolled back.
  1. Select a PagerDuty Severity level for the LaunchDarkly events you receive in PagerDuty. To learn more, read Dynamic Notifications.
  2. After reading the Terms and Conditions, check the I have read and agree to the Integration Terms and Conditions checkbox.
  3. Click Save configuration.

Your PagerDuty instance now receives events from LaunchDarkly.

Alert events will include the projKey, envKey, flagKey, and tags for the flag, which can be used to correctly route alerts. Here's an example payload for an alert sent to PagerDuty from LaunchDarkly:

{
"client": null,
"client_url": null,
"contexts": [
{
"href": "https://app.launchdarkly.com/default/test/features/pagerduty-test-flag#defaultrule",
"text": "Go to LaunchDarkly",
"type": "link"
}
],
"description": "Regression detected for measured rollout on flag PagerDuty Test Flag",
"event_type": "trigger",
"incident_key": "default:test:pagerduty-test-flag",
"service_key": "123456789",
"details": {
"envKey": "test",
"flagKey": "pagerduty-test-flag",
"projKey": "default",
"tags": [
"test",
"pagerduty"
]
}
}

You must configure a separate PagerDuty integration in LaunchDarkly for each LaunchDarkly environment you want to send events to PagerDuty from.