Statushub is a status page that connects with your monitoring tools to communicate infrastructure status to stakeholders.
The following guide will walk you through the steps required to integrate StatusHub with VictorOps.
In StatusHub
From the main portal, click the small pencil icon to “edit status site.”
This will bring you to the edit status site page, shown below, where you will select the “Services & Integrations” option on the left side menu.
To link an existing service, you can click on the pencil icon, or use the “New service” button to add a new service that will be linked to VictorOps.
If you have opted to create a new service, be sure to give it an appropriate name that you and your customers will recognize, select the VictorOps option, and assign in to the relevant group.
Otherwise, you should select the VictorOps option, then hit “Update Service”, and StatusHub will generate a webhook to use in VictorOps.
Once you have done this, your service will appear under the group you previously selected. Copy the key (string after the equals sign, underlined below) to your clipboard for later use.
In VictorOps
In VictorOps, select Settings >> Alert Behavior >> Rules Engine. You will create one Rules Engine rule for each service you have on StatusHub.
After clicking the green “+ Add a Rule”, you will set your matching criteria for the alerts that you would like to update StatusHub. For example, if you would like all Cloudwatch activity reflected on StatusHub, you could set the criteria to be when ‘monitoring_tool’ matches ‘Cloudwatch’.
You will then set a new field (StatusHubfield in the example) to the key included in the Webhook URL generated by StatusHub.
After creating one of these Rules Engine rules for each service you would like to integrate with StatusHub, and after giving each unique rule the corresponding ‘key’ from StatusHub, you will create an Outgoing Webhook.
To access this page, select Settings >> Alert Behavior >> Integrations >> Outgoing Webhooks.
Click the green “+ Add Webhook” to create your webhook.
Be sure you have selected the “Any-Incident” option from the event drop-down.
Select “POST” for the Method
Paste one of the full Webhook URL’s for one of your services from StatusHub into the ‘To’ field. Then, delete the string after the equals sign and replace it with ${{ALERT.StatusHubfield}}. This will dynamically pull in the Webhook ‘key’ for your specific service, thus completing the URL so that StatusHub can be updated.
Additionally, leave the payload blank. StatusHub will automatically pull the Incident’s entity_display_name to be the Title of the Incident on StatusHub, and the state_message to be the incident’s details.
View when the webhook is saved:
You are all set.
To test the webhook, create an incident with the appropriate criteria to trigger one of the Rules Engine rules you created. If everything works, your StatusHub page will update.