Grafana Alerts
Receive Grafana alert webhooks to automatically create and resolve BlameTrail incidents with fingerprint-based deduplication.
BlameTrail can receive Grafana alert webhooks and automatically create or resolve incidents based on alert state changes. When a Grafana alert fires, BlameTrail creates an incident. When the alert clears, the incident is auto-resolved. Fingerprint-based deduplication prevents duplicate incidents from repeated alert notifications.
Prerequisites
- A running Grafana instance with alerting configured
- A BlameTrail service to receive the incidents
Configuring the integration in BlameTrail
- Navigate to Organization > Integrations.
- In the Grafana section, select the BlameTrail service where Grafana alert incidents should be created.
- Copy the Webhook Secret — you will use this as the Bearer token when configuring Grafana.
Setting up Grafana
1. Create a contact point
- In Grafana, go to Alerting > Contact points.
- Click Add contact point.
- Configure:
| Field | Value |
|---|---|
| Name | BlameTrail |
| Type | Webhook |
| URL | https://blametrail.com/api/ingest/grafana-alerts |
| HTTP Method | POST |
| Authorization Header | Bearer your-shared-secret-here |
The Authorization header value must be Bearer followed by the webhook secret you copied from BlameTrail.
- Click Test to verify connectivity.
- Click Save.
2. Assign the contact point to a notification policy
- Go to Alerting > Notification policies.
- Edit an existing policy or create a new one.
- Set the Contact point to
BlameTrail. - Configure matching labels if you only want certain alerts to forward to BlameTrail.
- Click Save.
How it works
Incident creation
When Grafana sends an alert with a firing status:
- BlameTrail verifies the Bearer token in the Authorization header.
- It extracts the alert fingerprint, name, and labels.
- It checks if an open incident with the same fingerprint already exists (deduplication).
- If no existing incident is found, it creates a new incident on the configured service.
Auto-resolve
When Grafana sends an alert with a resolved status:
- BlameTrail looks up the open incident matching the alert fingerprint.
- If found, the incident is automatically resolved.
- If no matching incident exists (e.g., it was already manually resolved), the webhook is acknowledged without action.
Fingerprint-based deduplication
Grafana assigns a fingerprint to each unique alert (based on the alert rule and labels). BlameTrail uses this fingerprint to:
- Prevent duplicate incidents when Grafana sends repeated firing notifications for the same alert.
- Match resolved notifications to the correct open incident.
This means you do not need to worry about noisy alerts creating multiple incidents.
Incident details
Incidents created from Grafana alerts include:
| Field | Source |
|---|---|
| Title | Grafana alert name |
| Type | grafana_alert |
| Service | The service selected in the Grafana integration settings |
| Metadata | Alert labels, fingerprint, Grafana alert URL |
Testing
- In Grafana, go to Alerting > Contact points.
- Find the BlameTrail contact point and click Test.
- Check your BlameTrail service's incidents page. A test incident should appear.
- Send a resolve test to verify auto-resolve works.
Troubleshooting
| Problem | Cause | Solution |
|---|---|---|
| 401 on webhook delivery | Bearer token mismatch | Ensure the secret in Grafana matches the webhook secret shown in Organization > Integrations > Grafana |
| No incidents created | No target service selected | Verify a service is selected in the Grafana integration settings |
| Duplicate incidents | Fingerprint not included in payload | Ensure you are using Grafana Alerting (not legacy alerting), which includes fingerprints |
| Incidents not auto-resolving | Grafana not sending resolved notifications | Check your notification policy and ensure "Send resolved" is enabled |