When monitors fire or resolve, alerts can be sent to subscribed users within Foundry as well as to services external to Foundry. Monitoring views currently support sending alerts to PagerDuty, Slack, and webhooks.
Note that all integrations are configured against a given severity level. Only alerts matching that severity will trigger integration. For example, a PagerDuty integration configured for the MEDIUM
severity level will not be triggered when monitors fire at LOW
or HIGH
severities.
This integration uses the PagerDuty V2 Events API ↗ and usually does not require a service user, emails, or custom allowlisting or egress configuration. A single integration maps all alerts of a given severity within a monitoring view to an Events V2 API integration defined within a PagerDuty service. Note that multiple integrations defined within a monitoring view can map to the same PagerDuty integration key.
Configure a PagerDuty service with your desired escalation policy, urgency settings, and support hours. On the Integrations tab for the service, add a new integration. Select Events API V2 as the integration type and add the integration; Events API V2 can usually be found in the Most popular integrations section. Once the integration is added, selecting the gear symbol will show its details, including the Integration Key needed to create a new PagerDuty integration for your monitoring view.
Navigate to the Manage subscriptions tab for your monitoring view; in the Pagerduty Notifications section, select the plus sign (+) to create a new PagerDuty integration. You will need to specify a name for the integration, the integration key from when you created the Events V2 API integration, and the severity level. Repeat as needed for each desired severity level.
By default, the monitoring view will produce PagerDuty alerts for monitoring rule alerts and for legacy health checks belonging to the check group that was upgraded/linked to the monitoring view. However, monitoring views created prior to the v1.860.0 release (February 2024) will not produce PagerDuty alerts by default and need to be manually enabled. To enable this feature, select the Enable PagerDuty for health checks checkbox. Note that moderate severity health checks will use the MEDIUM
severity integrations, and critical severity health checks will use the HIGH
severity integrations.
This integration can trigger Slack messages in a set of configured channels.
This integration requires a Slack source to be created in Data Connection. This source requires a bearer token to be configured. This bearer token should have the following scopes:
channels:join
: Foundry will have the app join the requested channels automatically.channels:read
: This is used to list the available channels.chat:write
: This is used to send messages to the configured channels.groups:read
: Required for sending messages to private channels.An example way to generate such a token in Slack is:
See Slack API documentation ↗ for more details.
Navigate to the Manage subscriptions tab for your monitoring view; in the Slack section, use the plus sign (+) to create a new Slack integration. Select a configured Slack source. The Slack Channels field will then populate a list of available channels to which you can send alerts.
To configure the integration with private channels, invite the Slack App to the private channel and ensure the groups:read
scope has been granted.
Configure the severity level, and repeat as necessary for each additional desired severity level.
This integration can trigger Webhooks configured in Data Connection. Refer to the webhooks documentation for how to setup a webhook. To use a webhook integration, the webhook must have a string input parameter known as the Message
parameter. This will be filled in with the contents of the notification. The contents are not currently customizable.
Navigate to the Manage subscriptions tab for your monitoring view; in the Webhooks section, use the plus sign (+) to create a new webhook integration. You will need to first select a webhook before selecting the Message parameter on that webhook and the severity level. Repeat as needed for each desired severity level.