Skip to main content

Datadog

This feature was introduced in Unleash v4.0.0.

The Datadog integration allows Unleash to post Updates to Datadog when a feature flag is updated. To set up this integration, you need to set up a webhook connector for your channel. You can follow Submitting events to Datadog on how to do that.

The Datadog integration will perform a single retry if the HTTP POST against the Datadog Webhook URL fails (either a 50x or network error). Duplicate events may happen, and you should never assume events always comes in order.

Configuration

Events

You can choose to trigger updates for the following events:

  • feature-created
  • feature-updated (*)
  • feature-metadata-updated
  • feature-project-change
  • feature-archived
  • feature-revived
  • feature-strategy-update
  • feature-strategy-add
  • feature-strategy-remove
  • feature-stale-on
  • feature-stale-off
  • feature-environment-enabled
  • feature-environment-disabled
  • feature-environment-variants-updated
  • feature-potentially-stale-on

*) Deprecated, and will not be used after transition to environments in Unleash v4.3

Parameters

Unleash Datadog integration takes the following parameters.

  • Datadog API key - This is a required property. The API key to use to authenticate with Datadog.

  • Datadog Source Type Name - This is an optional property. Sets source_type_name parameter to be included in Datadog events. List of valid api source values

  • Extra HTTP Headers - This is an optional property. Used to set the additional headers when Unleash communicates with Datadog.

Example:

{
"SOME_CUSTOM_HTTP_HEADER": "SOME_VALUE",
"SOME_OTHER_CUSTOM_HTTP_HEADER": "SOME_OTHER_VALUE"
}
Body template availability

The body template property is available from Unleash 5.6 onwards.

  • Body template - This is an optional property. The template is used to override the body template used by Unleash when performing the HTTP POST. You can format your message using a Mustache template. Refer to the Unleash event types reference to find out which event properties you have access to in the template.

Example:

{
"event": "{{event.type}}",
"createdBy": "{{event.createdBy}}",
"featureToggle": "{{event.data.name}}",
"timestamp": "{{event.data.createdAt}}"
}

If you don't specify anything Unleash will send a formatted markdown body.

Example:

username created feature flag (featurename)[http://your.url/projects/projectname/features/featurename] in project *projectname*

Tags

Datadog's incoming webhooks are app specific. You will be able to create multiple integrations to support messaging on different apps.