Alarmierung mit Telegram

In diesem Artikel beschreibe ich, wie man Telegram für die Alarmierung an Checkmk anbinden kann.

Vorgehen

  1. Telegram installieren und Bot erzeugen
  2. Den neuen Chat testen
  3. Chat-ID eines Benutzers ermitteln
  4. Alarmierungsskript herunterladen und speichern
  5. Alarmierungsskript anpassen
  6. Alarmierungsregel erstellen

Die Schritte im Detail

Die Einrichtung beginnt mit der Installation der Telegram-App. Danach starten Sie einen Chat mit @BotFather. Das Anlegen des Bots wird durch diesen Befehl ausgelöst:

/newbot

BotFather führt Sie durch die Einrichtung. Wenn alles klappt bekommen Sie am Ende den Token fuer die HTTP API:

Senden Sie eine Nachricht an den Chat, um auszuprobieren ob alles klappt.

Im nächsten Schritt ermitteln Sie die ID des Benutzers von der Linux-Befehlszeile aus. Ersetzen Sie TOKEN_FUER_API durch Ihren Token:

curl -X POST https://api.telegram.org/botTOKEN_FUER_API/getUpdates

Im Ergebnis finden Sie die Benutzer-ID:

..... "chat":{"id":XXXXXXXXX, .....

Eine alternative Methode funktioniert ueber Telegram direkt: Senden Sie den Text /my_id an den Bot @get_id_bot.

Laden Sie ein vorgefertigtes Alarmierungsskript von meiner Internetseitei. Kopieren Sie das Skript in das Verzeichnis local/share/check_mk/notifications der Checkmk-Instanz.

Öffnen Sie die Datei mit einem Texteditor und passen Sie die folgenden 3 Zeilen an:

Zeile 1:

#!/usr/bin/env python

Zeile 24:

telegram_bot_token = 'TOKEN_FUER_API'

Zeile 105 (Tragen Sie beim Benutzer die vorher ermittelte ID als Pager-Adresse ein!):

telegram_chatid = context.get('NOTIFY_CONTACTPAGER')

Nach dem Speichern sollten Sie die Checkmk-Instanz neu starten:

omd restart

Jetzt können Sie eine Alarmierungsregel in Checkmk für Telegram anlegen.

Klappt die Alarmierung?

Senden Sie einen Testalarm. Wenn alles klappt, dann bekommen Sie ab sofort Alarme in Telegram.