# 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>
2.6 KiB
| aliases | canonical | keywords | title | weight | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
https://grafana.com/docs/oncall/latest/integrations/available-integrations/configure-webhook/ |
|
Inbound Webhook | 700 |
Inbound Webhook integrations for Grafana OnCall
Grafana OnCall directly supports many integrations, those that aren’t currently listed in the Integrations menu can be connected using the webhook integration and configured alert templates.
With the webhook integration, you can connect to any alert source that isn't listed in the Create Integration page.
There are two available formats, Webhook and Formatted Webhook.
-
Webhook will pull all of the raw JSON payload and display it in the manner that it's received.
-
Formatted Webhook can be used if the alert payload sent by your monitoring service is formatted in a way that OnCall recognizes.
The following fields are recognized, but none are required:
alert_uid: a unique alert ID for grouping.title: a title.image_url: a URL for an image attached to alert.state: eitherokoralerting. Helpful for auto-resolving.link_to_upstream_details: link back to your monitoring system.message: alert details.
To configure a webhook integration:
- In the Integrations tab, click + New integration to receive alerts.
- Select either Webhook or Formatted Webhook integration.
- Follow the configuration steps in the How to connect section of the integration settings.
- Use the unique webhook URL to complete any configuration in your monitoring service to send POST requests. Use any http client, e.g. curl to send POST requests with any payload.
For example:
curl -X POST \
https://a-prod-us-central-0.grafana.net/integrations/v1/formatted_webhook/m12xmIjOcgwH74UF8CN4dk0Dh/ \
-H 'Content-Type: Application/json' \
-d '{
"alert_uid": "08d6891a-835c-e661-39fa-96b6a9e26552",
"title": "The whole system is down",
"image_url": "https://upload.wikimedia.org/wikipedia/commons/e/ee/Grumpy_Cat_by_Gage_Skidmore.jpg",
"state": "alerting",
"link_to_upstream_details": "https://en.wikipedia.org/wiki/Downtime",
"message": "Smth happened. Oh no!"
}'
To learn how to use custom alert templates for formatted webhooks, see [Configure alerts templates][jinja2-templating].
{{% docs/reference %}} [jinja2-templating]: "/docs/oncall/ -> /docs/oncall//jinja2-templating" [jinja2-templating]: "/docs/grafana-cloud/ -> /docs/grafana-cloud/alerting-and-irm/oncall/jinja2-templating" {{% /docs/reference %}}