Heim  >  Artikel  >  Backend-Entwicklung  >  Python verwendet Nagios, um die WeChat-Alarmbenachrichtigungsfunktion hinzuzufügen

Python verwendet Nagios, um die WeChat-Alarmbenachrichtigungsfunktion hinzuzufügen

高洛峰
高洛峰Original
2017-01-17 09:51:151552Durchsuche

Nagios ist ein kostenloses Open-Source-Netzwerküberwachungstool, das den Hoststatus von Windows, Linux und Unix, Netzwerkeinstellungen wie Switches und Router, Drucker usw. effektiv überwachen kann. Wenn der System- oder Servicestatus abnormal ist, wird ein E-Mail- oder SMS-Alarm gesendet, um das Betriebs- und Wartungspersonal der Website sofort zu benachrichtigen. Nach Wiederherstellung des Status wird eine normale E-Mail- oder SMS-Benachrichtigung gesendet.

Nagios ruft die API-Schnittstelle der öffentlichen WeChat-Plattform auf, um Alarm-E-Mails zu senden. Vor dem offiziellen Einsatz sind einige Vorbereitungen zu treffen. Installieren Sie zunächst Nagios. Sie können das von mir bereitgestellte Nagios-Ein-Klick-Installationsskript verwenden. Dann ging ich zur öffentlichen Plattform WeChat, um ein Unternehmenskonto zu beantragen. Bei der Bewerbung habe ich den Namen der Organisation eingegeben. Es kann ohne Zertifizierung verwendet werden. Melden Sie sich abschließend bei der öffentlichen Plattform an, um ein Adressbuch hinzuzufügen, und erstellen Sie eine neue Anwendung (z. B. Nagios). Notieren Sie die Anwendungs-ID zur späteren Verwendung. Benutzerberechtigungen werden von Ihnen selbst festgelegt.

WeChat-Skript

Nachdem Nagios und die WeChat-Plattform bereit sind, laden Sie das WeChat-Befehlsskript herunter. Klicken Sie mit der rechten Maustaste auf „Herunterladen und speichern“. Laden Sie es dann auf den Nagios-Server hoch, beispielsweise in das Verzeichnis /usr/local/nagios/python/weixin, und legen Sie die Dateiberechtigungen auf ausführbar fest. Erstellen Sie eine neue config.py-Datei im Verzeichnis /usr/local/nagios/python/weixin und fügen Sie die folgende Konfiguration hinzu.

#coding:utf-8
CorpID='xxxxx'
Secret='xxxxxxxxxxxxxxxxx'
DEBUG=0
ToUser='sijitao.net'
AgentId=1


CorpID und Secret können erhalten werden, indem Sie sich bei der öffentlichen WeChat-Plattform anmelden und die hinzugefügte Anwendung (z. B. Nagios) öffnen.

Die vom WeChat-Skriptbefehl übergebenen Parameter sind durch das Symbol „-@@-“ getrennt. Detaillierte Anweisungen finden Sie unter meiner Github-Adresse: https://github.com/zhangnq/nagios/tree /master/weixin

Nagios-Konfiguration

Das Folgende ist die allgemeine Konfiguration auf Nagios.

Fügen Sie den Befehl weixin zur Befehlsdatei „commands.cfg“ hinzu:

define command{
command_name notify-host-by-weixin
command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "host-@@-$NOTIFICATIONTYPE$-@@-$HOSTNAME$-@@-$HOSTSTATE$-@@-$HOSTADDRESS$-@@-$HOSTOUTPUT$-@@-$CONTACTALIAS$"
}
define command{
command_name notify-service-by-weixin
command_line /usr/local/nagios/python/weixin/NotifyByWeixin.py "service-@@-$NOTIFICATIONTYPE$-@@-$SERVICEDESC$-@@-$HOSTALIAS$-@@-$HOSTADDRESS$-@@-$SERVICESTATE$-@@-$SERVICEOUTPUT$-@@-$CONTACTALIAS$"
}


Fügen Sie die Kontaktvorlage zur Vorlagendatei „templates.cfg“ hinzu:

define contact{
name weixin-contact
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r,f,s
host_notification_options d,u,r,f,s
service_notification_commands notify-service-by-weixin
host_notification_commands notify-host-by-weixin
register 0
}


Fügen Sie einen WeChat-Benachrichtigungskontakt in die Kontakte.cfg ein. Der Aliasname muss hier mit dem Namenskonto im Adressbuch der öffentlichen WeChat-Plattform übereinstimmen, bevor dies möglich ist erfolgreich versendet werden.

define contact{
contact_name zhangnq-weixin
use weixin-contact
alias zhangnq
email admin@sijitao.net
}


Nachdem Sie bei der Konfiguration des Dienstes den Kontakt zhangnq-weixin hinzugefügt haben, können Sie schließlich Alarm-E-Mails über WeChat senden.

Python verwendet Nagios, um die WeChat-Alarmbenachrichtigungsfunktion hinzuzufügen

Hier geht es um die Python-Funktion, die der Redakteur mit Ihnen über die Verwendung von Nagios zum Hinzufügen von WeChat-Alarmbenachrichtigungen geteilt hat.

Weitere Python-bezogene Artikel, in denen Nagios zum Hinzufügen von WeChat-Alarmbenachrichtigungen verwendet wird, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn