Sende Nagios Meldungen an den Telegram Messenger
Folgende Dateien müssen bearbeitet werden:
Datei contacts.cfg:
define contact{ contact_name nagios-telegram service_notification_options w,u,c,r service_notification_period 24x7 host_notification_period 24x7 service_notification_commands notify-service-by-telegram host_notification_commands notify-host-by-telegram host_notification_options d,r pager <CHAT_ID> *1) }
Datei commands.cfg:
(/etc/nagios/objects)
############################################################################### # TELEGRAM notify ############################################################################### define command{ command_name notify-host-by-telegram command_line /usr/bin/curl -X POST --data chat_id=$CONTACTPAGER$ --data parse_mode="markdown" --data text="Nagios-HOST-Alert %0A%0A Host:%60$HOSTNAME$%60 %0A%0A IP: $HOSTADDRESS$ %0A%0A Type: $NOTIFICATIONTYPE$ %0A%0A Status: $HOSTSTATE$ %0A%0A $HOSTOUTPUT$ %0A%0A" https://api.telegram.org/bot<botTOKEN>/sendMessage } define command{ command_name notify-service-by-telegram command_line /usr/bin/curl -X POST --data chat_id=$CONTACTPAGER$ --data parse_mode="markdown" --data text="Nagios-Service-Alert %0A%0A Host:%60$HOSTNAME$%60 %0A%0A IP: $HOSTADDRESS$ %0A%0A Type: $NOTIFICATIONTYPE$ %0A%0A Status: $SERVICESTATE$ %0A%0A $SERVICEDESC$ %0A%0A $SERVICEOUTPUT$ %0A%0A" https://api.telegram.org/bot<botTOKEN>/sendMessage }
*1)
Chat_ID abfragen:
Sende eine Nachricht an den Bot.
z.B. Test
Den Status abfragen:
https://api.telegram.org/bot<botTOKEN>/getUpdates
in der Ausgabe nach {“id”: xxxxxxx suchen. ( Zeilenende = Messagetext: “text”:”Test”}}]} )
xxxxxx = chat_id
Nagios Alert Meldung
Infos zum erstellen eines Telegram Bot:
Bots: An introduction for developers
ext. Link: create Telegram Bots
Telegram Bots FAQ:
ext. Link: Bots FAQ
Nagios Benachrichtung mit Telegram Messenger