Uptime alerts in Microsoft Teams
A card in the channel when a monitor goes down, when it turns slow, and when it is back, with a button to the status page.
StatOSSAPP02:51
Northwind: API is down
API (https://api.northwind.example/health) is failing.
Error: timeout, 2 checks in a row, confirmed from a second location.
Status page
Setting it up
- In Teams, open Workflows and create a workflow from the template "Post to a channel when a webhook request is received".
- Pick the team and the channel, finish, and copy the URL the workflow shows.
- In StatOSS, open Account, Alerts, choose Microsoft Teams under "Add a destination", paste the URL, tick the pages whose alerts go there, and add it.
- Press "Send a test" next to it. A URL that is wrong, or a workflow that was deleted, shows up now rather than during an outage.
Microsoft Teams is on Hobby ($4 a month) and Pro. Email alerts are on every plan, Free included. The pricing page has the rest.
What the card says
The page and monitor names in bold, the URL, what failed, the time, and on recovery how long the outage lasted, with a Status page button. The words are shown as written, not read as Markdown. One channel can take alerts from several pages, since each card names its page. A page's visitors can follow its incidents in a Teams channel too, on Pro; the subscribers page has that.
When an alert goes out
One alert per change of state: when a monitor goes down, when it turns slow, and when it is back, with the time, the reason, and how long it was out. A monitor counts as down after two failed checks in a row, each confirmed by a second server on another network; a single failed check sends nothing. A repeat interval sends a "still down" notice every so many minutes while an outage lasts, and nothing is sent during a maintenance window. Every kind of monitor alerts the same way: a website, an API, a port, a certificate, a cron job.