In Flashduty On-call
Create either a dedicated or shared DBmarlin alert integration and copy its complete Push URL.
Configure DBmarlin
The Webhook integration requires DBmarlin v5.11 or later, and a DBmarlin server can have only one Webhook integration.
1
Open the Webhook integration
In DBmarlin, go to Settings → Integrations and click Edit on the Webhook row.
2
Enter the URL and headers
- Webhook URL: the complete Flashduty Push URL, such as
https://api.flashcat.cloud/event/push/alert/dbmarlin?integration_key=<your-integration-key> - DBmarlin URL: the address you use to open DBmarlin, used for the link back into DBmarlin
- Headers: add
Content-Type: application/json
3
Enter the Content Template (instance alerts)
The Content Template is used for instance alerts. Paste this JSON:
4
Enter the Host Content Template (host alerts)
The Host Content Template is used for host alerts. Paste this JSON:
5
Enable and verify
Save and enable the integration. Under Settings → Alert Rules, create a rule that is easy to trigger, wait for DBmarlin to send the “started” notification, and confirm Flashduty shows an active alert. When the rule clears, DBmarlin sends the “ended” notification; confirm the same alert recovers. The DBmarlin docs do not mention a test button for the Webhook, so verify with a real alert.
Alert Key
Flashduty computes the Alert Key from the rule ID (
ruleid) plus the instance name (instance) or host name (node); instance alerts and host alerts never share a key. The “started” and “ended” notifications of one rule on the same instance or host share one Alert Key; changes to from, to, values, and the rule name do not change it.
- If you delete a rule and recreate it, it gets a new rule ID and the old alert is not resolved; close it manually
- When the same rule fires again, it uses the same Alert Key
Status and severity
DBmarlin has only the warning level, so every alert is treated as Warning. The DBmarlin docs do not list the values of
startedended; Flashduty treats a value starting with end as the end and any other value as a start.
Recovery and auto-close
DBmarlin sends an “ended” notification when an alert ends, and Flashduty uses it to recover the alert. To keep a lost notification from leaving an alert open, configure auto-close after timeout on the channel or integration, longer than your rules can stay active.
Troubleshooting
- DBmarlin logs
status code 400: confirm the template is valid JSON and containsruleid, plusinstance(instance alerts) ornode(host alerts) 404or401: confirm the Webhook URL is complete and containsintegration_key- The alert does not recover: confirm DBmarlin sent the “ended” notification and the template contains
startedended; a double quote or backslash in a rule name breaks the JSON, so avoid them - Host alerts do not arrive: host alerts use the Host Content Template, not the Content Template