- 12 May 2023
- 3 Minutes to read
- Updated on 12 May 2023
- 3 Minutes to read
AlertOps and Segment
AlertOps’ alert management system can be integrated with Segment to receive and respond to all (predefined status mappings) alerts through email, SMS, push notification or phone alerts. AlertOps would ensure that the alert/job status would reach the appropriate team by using proper workflows, escalation policies and schedules. Based on your ruleset, incidents can be automatically opened and closed, depending on what kind of alert Segment reports.
The above scenario and scope for integration is due to the fact that AlertOps has a very flexible and simple API/Webhook configuration feature that can be leveraged with Segment' destination transport capabilities.
AlertOps - Inbound Integration
We can define rulesets in AlertOps so that Segment can send out alerts to the AlertOps platform. AlertOps would ensure based on these notifications received, that it would always reach out and assign to the correct person/team by utilizing its escalation policies, schedules, and workflow features.
AlertOps provides Inbound Integrations to integrate with numerous monitoring, chat and ITSM tools. You can configure an inbound integration for Segment.
At a high level this is how the flow looks like, you define an API integration in the AlertOps platform by defining settings like Integration Name, Escalation rules, recipient users/groups. Once an integration is defined, a unique API URL is generated. This acts as webhook or the gateway through which notifications from Segment reach AlertOps and thus an incident/alert is created correspondingly. The API can be defined with various settings like URL mappings, filters, escalations etc. as required. Segment has to be configured with a Destination Webhook.
Configure Inbound Integration in AlertOps
- Once you selected the integration, you can then specify basic settings like the integration name, escalation policy, names of the recipients/groups for which the alerts must be assigned to.
- Once you click save, the API Integration will be created, and you will be given a unique URL which acts as the access point and needs to be configured at the source (in this case Segment), to send alerts. You can find the integration you just created, and you can give advanced settings and define various configurations for the alerts to be received and processed. For example, you can define when to open and close alerts based on the payload obtained from the API call, filters etc.
- Make a note of the API URL, which will be used in Segment, so it calls a HTTP POST request to this URL with the body in JSON format containing the alert specific information. AlertOps automatically creates an alert when the status variable (properties^state) contains 'triggered'. The incident will also be closed automatically when the status 'ok' is received from Segment. (A separate property called 'state' must be defined under 'properties' within Segment in their webhook event definition)
- In Advanced Settings you can define URL mappings as you want in the Rules for Opening and Closing Alerts. You can provide other filters and match with regex expressions as well. You can also test the generated URL with the sample data provided.
Configure Integration in Segment
- In your Segment dashboard, go to 'Destinations', click on 'Add Destination' and then search/select 'Webhooks' from the Catalog.
- You can configure a Destination Webhook only if you have configured Sources.
- Give the Webhook a name, and under 'Other Settings', select Webhook URL - paste the AlertOps Inbound Integration API URL.
- Under Connection Settings, select 'Webhooks (max 5)' and paste the AlertOps Inbound Integration API URL there as well.
- You can go to 'Event Tester' and build out a sample event payload and test sending it to AlertOps.
- Make sure that the Webhook is enabled, and the event payload 'Properties' key comes with the following mandatory Key-value pairs - 'state' and 'url'. 'state' values must be either 'triggered' or 'ok' based on the logic for opening and closing alert set in the Segment Sources.
- The templated integration in AlertOps maps event values of the type 'Track' in segment. You can change the event type as you want, but make sure to map the payload accordingly in AlertOps as well. For info on AlertOps Custom mapping visit https://help.alertops.com/en/articles/1736353-custom-url-mapping
- You can send a test event and check if it ingested in AlertOps.
Thats it! You have configured a Webhook Destination. Any alert will be sent to AlertOps for incident management.
Message logs, alert specific information can be viewed in the “Inbound Log” section in AlertOps Dashboard. Alerts can be viewed in the ‘Alerts’ tab as well.
Alert Triggering Information
AlertOps will automatically create an incident when a new alert is received from Segment when the properties^state contains "triggered".
If an alert with status "triggered" matches an existing Open Alert, AlertOps will recognize the new alert as a duplicate and ignore the alert.
The alert will be recorded in the Inbound Messages table as “Mapped Appended.”
AlertOps will automatically close the same incident when an alert with properties^state contains "ok".
AlertOps Integration Guides