Pushing Seeq Notifications to an Outgoing Webhook
It is possible to publish Notifications from Workbench to an outgoing webhook. It must be a webhook configured in Seeq (Data Lab). This article outlines how users can receive notifications on the presence of Seeq capsules via something other than email, such as in Slack.
This feature requires an additional software license. Please contact your Seeq sales representative for more information.
When posting to Data Lab the URL set in the Seeq configuration should be in “relative” form (details in the next section).
Seeq Vantage Condition Monitors
Starting in R65, Seeq Vantage utilizes the same condition monitoring infrastructure as email notifications, and these outgoing webhooks. If your organization is using Vantage, you may see Conditions with a notification that shows this message when clicked:
You can confirm this is a Condition being monitored by Seeq Vantage by opening its Item Properties, and validating it’s name is “Vantage monitor”:
Below is a sample project that includes the full path from Seeq to Slack:
Steps to implement the sample project:
Enable Notifications configuration -
Features/Notifications/ConditionMonitors/Enabled
on the Seeq server (Administrator access required).Create a notification on a condition.
In Seeq Data Lab, make a new project.
Add an API endpoint that will be receiving the notifications and sending them out to slack (Like the script provided below). The code below can be copy-pasted and used right after replacing the URL on line 68.
Depending on how many notifications are configured on the system, you may want to adjust this script to filter to a subset of the notifications for the webhook integration.
5. Once this script is placed in a Data Lab notebook, the user will be able to construct a relative URL of the following format:/data-lab/{project_uuid}/sdl/api/notebooks/{notebook_name}/endpoints/{endpoint_path}?{query_string}
Once variables in this URL are replaced with real values from the Data Lab notebook, the URL will need to be set in the following configuration setting: Features/Notifications/ConditionMonitors/OutgoingWebhookUrl
. This is the global notifications webhook. To receive notifications from a single condition monitor, set the condition monitor’s webhookUrl
field via the API endpoint POST /condition-monitors/{id}
.
6. Finally, to make the script work, the user needs to create a new Slack App that will post messages to a selected channel. For this step Slack has thorough documentation and guided tutorials. Some helpful resources are:
Once a user has created and configured the Slack App, Slack will provide a webhook URL that will replace the URL on line 68 in the data lab script provided above.
An example Slack message received after implementing the sample project:
😱 SaaS Application Alerts:
Condition: Chocolate is lacking some sugar
Start: 2021-03-12 11:05:05
Customer: ChocolateFactory
Domain: MagicLand
Server: MagicServer1
Also see this YouTube video where a Microsoft Teams integration was deployed:
https://www.youtube.com/watch?v=ksghY0bWGHc