Microsoft Teams is a workplace collaboration app that combines chat, task planning, notes, meetings, and attachments. We use teams in many areas of our workplace, from UX to HR.
Recently, we wanted to devise a way to use Teams to alert production engineers of P0 development issues, aka “blockers.” Specifically, we wanted alerts to tell developers whether the Azure VM environment was running critically low on memory.
In the past, we relied on email alerts. If a team member missed reading the email, however, the project was halted. We needed a system where team members would be informed via phone alert as soon as a P0 issue arose.
To create the alert system, we used Teams's built-in webhook integration. A webhook is an event-triggered API that allows information exchange between apps in real-time.
To integrate webhooks with Teams, we first created a separate Teams channel for production alerts. Next, we created a script that monitored server memory usage. The script scanned server performance logs and generated an alert when available memory fell below 10 GB. The alert triggered an immediate webhook warning on Teams, which instantly informed all team members of the issue via mobile push notification.
Figure 1: Memory usage script |
Figure 2: Webhook warning |