• Home
  • Integrations
  • SDKs
  • Guides
  • API docs
    No results for ""
    EXPAND ALL

    EDIT ON GITHUB

    Using flag triggers with Datadog

    Read time: 2 minutes
    Last edited: May 13, 2022
    Flag triggers is an Enterprise feature

    Flag triggers is available to customers on an Enterprise plan. To learn more, read about our pricing. To upgrade your plan, contact Sales.

    Overview

    This topic explains how to use LaunchDarkly's trigger feature with Datadog. For example, you can create an alert in Datadog that toggles a flag on or off if a performance metric drops below a certain threshold.

    We recommend using flag triggers for Datadog alerts only, not recovery alerts. If you connect a trigger to recovery alerts, the trigger activates on recovery as well as on alert.

    To learn more about configuring your webhook without recovery alerts, read Connecting the webhook to a Datadog event.

    Prerequisites

    In order to complete this topic, you must meet the following prerequisites.

    • You must have a feature flag with a trigger. To learn more about creating triggers, read Creating a new flag trigger.
    • You must have access to the trigger's URL, which you copied and saved during the trigger creation process. To learn more, read Understanding flag triggers' security.
    • You must have an existing Datadog account.

    Connecting a flag trigger to Datadog

    Connecting a LaunchDarkly trigger to Datadog takes two steps.

    You must:

    1. Create a webhook in Datadog that includes a custom JSON template with your trigger URL, and
    2. Connect that webhook to a Datadog alert.

    Setting up a JSON template in Datadog

    First you must configure a JSON template to use the LaunchDarkly trigger.

    To configure the template:

    1. Log in to Datadog.
    2. Navigate to Integrations and search for the Webhooks section.
    3. Create a new webhook based on the Installation instructions and paste the LaunchDarkly trigger URL into the URL field.
    4. Copy this Datadog payload into the configuration field in Datadog:
    {
    "title": "$EVENT_TITLE",
    "url": "$LINK"
    }
    You must customize the payload to view trigger details in LaunchDarkly

    The only payload keys LaunchDarkly processes are title and url. Any other fields you put in the payload do not appear in LaunchDarkly.

    If you use a different JSON template than the one provided above, you must include the title and url fields or the trigger will not save useful data about the event in the flag's auditlog. The url is the URl of your Datadog event.

    1. Click Save.

    Connecting the webhook to a Datadog event

    After you create the webhook in Datadog, you must connect it to an event in order for the LaunchDarkly trigger to perform actions on the flag.

    1. Navigate to Monitors.

    2. Choose the Alert you wish to connect to the trigger and add the webhook you created earlier to that alert.

      If you don't want Datadog to trigger when the alert recovers, wrap the webhook in the following template expression:

      `{{#is_alert}} @webhook-<YOUR_WEBHOOK_NAME> {{/is_alert}}`
    3. Click Save.

    4. In the Datadog metric alert you want to activate the flag trigger, add @webhook-<YOUR_WEBHOOK_NAME>.

    Testing the trigger configuration

    After you create a trigger in Datadog, you can verify that it has connected to LaunchDarkly correctly.

    To test the trigger:

    1. Navigate to Datadog and find the metric alert to which you added the webhook.
    2. Click Test Notifications at the bottom of the page.
    3. Select any single notification and click Run Test. This sends a test event to LaunchDarkly.
    4. Navigate back to the flag's Settings page in LaunchDarkly.
    5. Click the overflow menu on your LaunchDarkly trigger to confirm that the execution count has incremented. Sending a test notification does not trigger the flag action, so don't worry that you might toggle a flag by testing the configuration.

    Your configuration details may vary based on your requirements.

    To learn more about how Datadog handles webhooks, read Datadog's documentation.