In diesem Artikel werden hauptsächlich relevante Informationen zur WeChat-Alarm-Zabbix-Methode vorgestellt. Freunde, die sie benötigen, können darauf zurückgreifen.
In einer realen Produktionsumgebung verwenden wir normalerweise E-Mail und SMS, um Zabbix-Alarminformationen zu erhalten, E-Mail jedoch Oftmals werden sie von Mitarbeitern in den Hintergrund gedrängt oder sogar als Spam herausgefiltert. Die SMS-Schnittstelle des Unternehmens ist zu teuer und der Einsatz von SMS-Alarmen in komplexen Umgebungen erhöht die Betriebs- und Wartungskosten erheblich. WeChat bietet eine gute Schnittstelle zu Drittanbietern. Wir können WeChat zur Alarmierung verwenden, um die Betriebs- und Wartungskosten zu senken.
Für die Drittanbieter-Schnittstelle von WeChat müssen wir zunächst ein Unternehmenskonto beantragen – Portal: https://qy.weixin.qq.com/
Wie betreibe ich das Unternehmenskonto?
1. Firmenmitglieder zum Adressbuch hinzufügen
Wir müssen der Organisationsabteilung vorab die Mitgliedsinformationen, die erforderlichen Felder + Mobiltelefon hinzufügen Nummer oder WeChat-ID. Nur wenn andere den QR-Code scannen, können sie dem Unternehmenskonto erfolgreich folgen.
Hinweis: Hier müssen wir zwei Informationen verwenden: eine organisatorische Abteilungs-ID und eine Kontonummer eines Abteilungsmitglieds (die Kontonummer wird im Gegensatz zur WeChat-ID manuell von Ihnen angegeben, am besten). um Buchstaben und Zahlen zu verwenden)
2. Erstellen Sie eine Bewerbung im Bewerbungscenter
Wir möchten hier eine Anwendung erstellen, weil wir über die App Nachrichten an Abteilungsmitglieder senden müssen
Hinweis: Merken Sie sich hier einen Wert, die Anwendungs-ID
3. Legen Sie einen Administrator für die Abteilung fest
Einstellungen--->Funktionseinstellungen---->Berechtigungsverwaltung----> ;Erstellen Sie eine neue Verwaltungsgruppe
Administrator Sie müssen dem Unternehmenskonto im Voraus gefolgt sein und Ihre E-Mail-Adresse eingerichtet haben
Stellen Sie sicher, dass der Administrator das lesen kann Adressbuch und nutzen Sie die App zum Versenden von Nachrichten.
Hinweis: Wir benötigen die CorpID und das Geheimnis des Administrators
Wir müssen diese Dinge vorbereiten:
Ein WeChat-Unternehmenskonto
Das Unternehmenskonto wurde von Abteilungsmitgliedern verfolgt
Es gibt eine Anwendung im Unternehmenskonto, die Nachrichten senden kann
Ein autorisierter Administrator kann die Anwendung verwenden, um Nachrichten an Mitglieder zu senden
Wir möchten diese Informationen erhalten:
Mitgliedskonto
Organisationsabteilungs-ID
Anwendungs-ID
CropID
Geheim
Wie rufe ich die WeChat-Schnittstelle auf?
Für den Aufruf der WeChat-Schnittstelle ist ein Zertifikat zum Aufrufen der Schnittstelle erforderlich: access_token
Access_token kann über CropID, Secret abgerufen werden, das erhaltene Token ist jedoch zwei Minuten lang gültig
微信企业号接口调试工具传送门:http://qydev.weixin.qq.com/debug
Shell脚本原理
使用:
curl -s -G url 获取 AccessToken
使用:
curl --data url 传送凭证调用企业号接口
zabbix会传递三个参数给脚本,$1是消息接收账号,$2报警标题,$3报警内容
#!/bin/bash ###SCRIPT_NAME:weixin.sh### ###send message from weixin for zabbix monitor### ###wuhf### ###V1-2015-08-25### CropID=‘xxxxxx‘ Secret=‘xxxxxx‘ GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" Gtoken=$(/usr/bin/curl -s -G $GURL | awk -F\" ‘{print $4}‘) PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken" function body() { local int AppID=3 企业号中的应用id local UserID=$1 部门成员id,zabbix中定义的微信接收者 local PartyID=1 部门id,定义了范围,组内成员都可接收到消息 local Msg=$(echo "$@" | cut -d" " -f3-) 过滤出zabbix中传递的第三个参数 printf ‘{\n‘ printf ‘\t"touser": "‘"$User"\"",\n" printf ‘\t"toparty": "‘"$PartyID"\"",\n" printf ‘\t"msgtype": "text",\n‘ printf ‘\t"agentid": "‘" $AppID "\"",\n" printf ‘\t"text": {\n‘ printf ‘\t\t"content": "‘"$Msg"\""\n" printf ‘\t},\n‘ printf ‘\t"safe":"0"\n‘ printf ‘}\n‘ } /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
为什么要这样写脚本?
因为微信企业号开放的端口有固定的格式限制
企业号支持的格式:http://qydev.weixin.qq.com/wiki/index.php?title消息类型及数据格式
将脚本放入zabbix默认执行路径下
mv weixin.sh /usr/local/zabbix/share/zabbix/alertscripts
chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/weixin.sh
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/weixin.sh
服务器端
1.创建媒介
2.创建用户
3.创建触发器动作发送内容
4.设置触发器动作发送方式
收到的微信消息:
以上就是微信报警 zabbix 的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!
更多微信报警 zabbix实现详解相关文章请关注PHP中文网!