# What this PR does The `docs/reference` shortcode supports contextual destinations and version inference. `<ONCALL VERSION>` is inferred to match the version of the documentation set. For example, the inferred version for the page /docs/grafana/oncall/latest/get-started/ is "latest". It can also be overriden using front matter. Given the same page, but with the additional front matter `oncall_version: next`, the variable is substituted with "next" rather than "latest". Contextual destinations are achieved using repeated labels in the shortcode inner text. The format is [<LABEL>]: "<PAGE PATH PREFIX> -> <HUGO REFERENCE>". - _`<LABEL>`_ matches the reference style link label used in the rest of the text. - _`<PAGE PATH PREFIX>`_ is matched against the page during the production build. If the match is successful, the destination that is used is _`<HUGO REFERENCE>`_. The first matching prefix is used, not the longest matching prefix. ## Which issue(s) this PR fixes - Broken links due to ambiguous relref resolution. Any relref parameter that does not start with either `/`, `./`, or `../` can resolve ambiguously and is resulting in broken link behavior on the current site. - Broken links in Grafana Cloud. We mount OnCall documentation in Grafana Cloud. In https://github.com/grafana/website/pull/13872 the location will become /docs/grafana-cloud/alerting-and-irm/oncall. This PR is intended to be merged alongside that PR. --------- Signed-off-by: Jack Baldry <jack.baldry@grafana.com> Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
3 KiB
| aliases | canonical | keywords | title | weight | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
https://grafana.com/docs/oncall/latest/integrations/available-integrations/configure-elastalert/ |
|
ElastAlert | 500 |
ElastAlert integration for Grafana OnCall
The ElastAlert integration for Grafana OnCall handles ticket events sent from ElastAlert webhooks. The integration provides grouping, auto-acknowledge and auto-resolve logic via customizable alert templates.
You must have the [role of Admin][user-and-team-management] to be able to create integrations in Grafana OnCall.
Configuring Grafana OnCall to Receive Alerts from ElastAlert
- In the Integrations tab, click + New integration.
- Select ElastAlert from the list of available integrations.
- Enter a name and description for the integration, click Create
- A new page will open with the integration details. Copy the OnCall Integration URL from HTTP Endpoint section.
Configuring ElastAlert to Send Alerts to Grafana OnCall
To send an alert from ElastAlert to a webhook, follow these steps:
Refer to ElastAlert http-post docs for more details
- Open your ElastAlert configuration file (e.g.,
config.yaml). - Locate the
alertsection. - Add the following configuration for the webhook alert:
alert: post
http_post_url: "http://example.com/api"
http_post_static_payload:
title: abc123
Replace "abc123" with a suitable name for your alert, and "http://example.com/api" with OnCall Integration URL.
4. Save the configuration file.
After configuring the webhook, ElastAlert will send alerts to the specified endpoint when triggered. Make sure your webhook endpoint is configured to receive and process the incoming alerts.
Grouping, auto-acknowledge and auto-resolve
Grafana OnCall provides grouping, auto-acknowledge and auto-resolve logic for the ElastAlert integration:
- Alerts created from ticket events are grouped by ticket ID
- Alert groups are auto-acknowledged when the ticket status is set to "Pending"
- Alert groups are auto-resolved when the ticket status is set to "Solved"
To customize this behaviour, consider modifying alert templates in integration settings.
Configuring Elastalert to send heartbeats to Grafana OnCall Heartbeat
Add the following rule to ElastAlert
index: elastalert_status
type: any
alert: post
http_post_url: {{ heartbeat_url }}
realert:
minutes: 1
alert_text: elastalert is still running
alert_text_type: alert_text_only
{{% docs/reference %}} [user-and-team-management]: "/docs/oncall/ -> /docs/oncall//user-and-team-management" [user-and-team-management]: "/docs/grafana-cloud/ -> /docs/grafana-cloud/alerting-and-irm/oncall/user-and-team-management" {{% /docs/reference %}}