Skip to main content

Microsoft Teams

You can send Netdata alerts to Microsoft Teams using Netdata's Agent alert notification feature, which supports dozens of endpoints, user roles, and more.

Setup

Prerequisites

  • The incoming webhook URL as given by Microsoft Teams. You can use the same on all your Netdata servers (or you can have multiple if you like).
  • One or more channels to post the messages to
  • Access to the terminal where Netdata Agent is running

Configuration

File

The configuration file name for this integration is health_alarm_notify.conf.

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config health_alarm_notify.conf

Options

The following options can be defined for this notification

Config Options
NameDescriptionDefaultRequired
SEND_MSTEAMSSet SEND_MSTEAMS to YESYESyes
MSTEAMS_WEBHOOK_URLset MSTEAMS_WEBHOOK_URL to the incoming webhook URL as given by Microsoft Teams.yes
DEFAULT_RECIPIENT_MSTEAMSSet DEFAULT_RECIPIENT_MSTEAMS to the encoded Microsoft Teams channel name you want the alert notifications to be sent to.yes
DEFAULT_RECIPIENT_MSTEAMS

In Microsoft Teams the channel name is encoded in the URI after /IncomingWebhook/. You can define multiple channels like this: CHANNEL1 CHANNEL2.

All roles will default to this variable if left unconfigured.

You can have different channels per role, by editing DEFAULT_RECIPIENT_MSTEAMS with the channel you want, in the following entries at the bottom of the same file:

role_recipients_msteams[sysadmin]="CHANNEL1"
role_recipients_msteams[domainadmin]="CHANNEL2"
role_recipients_msteams[dba]="databases CHANNEL3"
role_recipients_msteams[webmaster]="CHANNEL4"
role_recipients_msteams[proxyadmin]="CHANNEL5"
role_recipients_msteams[sitemgr]="CHANNEL6"

Examples

Basic Configuration
#------------------------------------------------------------------------------
# Microsoft Teams (office.com) global notification options

SEND_MSTEAMS="YES"
MSTEAMS_WEBHOOK_URL="https://outlook.office.com/webhook/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX@XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/IncomingWebhook/CHANNEL/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
DEFAULT_RECIPIENT_MSTEAMS="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

Troubleshooting

Test Notification

You can run the following command by hand, to test alerts configuration:

# become user netdata
sudo su -s /bin/bash netdata

# enable debugging info on the console
export NETDATA_ALARM_NOTIFY_DEBUG=1

# send test alarms to sysadmin
/usr/libexec/netdata/plugins.d/alarm-notify.sh test

# send test alarms to any role
/usr/libexec/netdata/plugins.d/alarm-notify.sh test "ROLE"

Note that this will test all alert mechanisms for the selected role.


Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.