Skip to main content

Overview

Datadog sends alerts through the Webhooks Integration, rendering a configurable payload template. Because Datadog has no fixed format, aciona.me reads several alternative fields — but the recommended template below guarantees the correct behavior, including auto-resolution.

Prerequisites

  • Permission to edit integrations and monitors in Datadog.
  • A service created in aciona.me and linked to a team with an active schedule.

1. Create the alert source in aciona.me

Under Alert sources, create a source of type Datadog.

2. Copy the URL and the token

3. Create the webhook in Datadog

1

Integrations → Webhooks → Add Webhook

Name: aciona-me — this is how you will reference it in monitors, as @webhook-aciona-me.
2

URL

https://ingress.aciona.me/webhooks/<sourceId>
3

Payload

Paste the recommended template:
4

Advanced Options → Custom HTTP Header

X-Aciona-Token: <sourceToken>

4. Reference the webhook in the monitor

In the monitor, under “Notify your team as”, add @webhook-aciona-me.
Do not put @webhook-aciona-me only inside {"{{#is_alert}}"}. If it is restricted to that block, Datadog only fires the webhook on the Triggered transition — Recovered never arrives and auto-resolution breaks silently. Keep the mention outside any conditional block.
Also set the monitor’s P1–P5 priority, which becomes the incident severity.

5. Send a test alert

Use Test Notifications on the monitor, or force the alert condition.

6. Confirm the incident

Under Incidents, check that the title, severity and service are correct.

7. How fields are translated

Status

A missing or unknown transition is treated as a trigger — aciona.me prefers notifying too much over not notifying at all.

Severity

With no priority set, aciona.me falls back to the alert type and, failing that, warning.

Service

The service hint comes, in this order, from the service: tag, the alert scope, the hostname and the metric. Tag your monitors with service:<name-in-aciona-me>. Only the service: tag can create a new service; hostname and metric only match existing services.

Troubleshooting

Almost always it is @webhook-aciona-me stuck inside {"{{#is_alert}}"}. Move the mention out of conditional blocks. Also check that $ALERT_TRANSITION is in the template — without it, every event is treated as a trigger.
The template does not include $ALERT_TITLE. Use the recommended template above.
The template does not include $ALERT_CYCLE_KEY, so correlation fell back to another field. Add it.
The monitor has no P1–P5 priority set.
The Datadog Webhooks Integration only retries on 5xx errors. Since aciona.me answers 202 quickly, this is rarely a problem — but alerts rejected for an invalid token (401) are not resent.