Cet article présente principalement les informations pertinentes sur la méthode Zabbix d'alarme WeChat. Les amis qui en ont besoin peuvent s'y référer
Dans un environnement de production réel, nous utilisons généralement le courrier électronique et les SMS pour recevoir les informations d'alarme Zabbix, mais le courrier électronique l'est. souvent utilisé par le travail, le personnel est laissé dans les coins ou même filtré comme spam. L'interface SMS de l'entreprise est trop coûteuse et l'utilisation d'alarmes SMS dans des environnements complexes augmentera considérablement les coûts d'exploitation et de maintenance. WeChat fournit une bonne interface tierce. Nous pouvons utiliser WeChat pour déclencher une alarme afin de réduire les coûts d'exploitation et de maintenance.
L'interface tierce de WeChat nous oblige à demander d'abord un compte d'entreprise - portail : https://qy.weixin.qq.com/
Comment faire fonctionner le compte entreprise ?
1. Ajouter des membres corporatifs au carnet d'adresses
Nous devons ajouter les informations sur les membres au service organisationnel à l'avance, et les champs obligatoires incluent le téléphone portable. numéro ou identifiant WeChat, de sorte que les autres Ce n'est que lorsque vous scannez le code QR que vous pouvez suivre avec succès le compte d'entreprise.
Remarque : Nous devons utiliser deux informations ici, un identifiant de service organisationnel et un numéro de compte d'un membre du département (le numéro de compte est spécifié manuellement par vous-même, contrairement à l'identifiant WeChat, il est préférable pour utiliser des lettres et des chiffres)
2. Créez une application dans le centre de candidature
Nous allons créer une application ici car nous avons besoin d'envoyer des messages aux membres du département via l'application Remarque : N'oubliez pas une valeur ici, l'ID de l'application3. Configurer un administrateur pour le département
Paramètres--->Paramètres de fonction---->Gestion des autorisations--- ->Nouveau groupe de gestion Administrateur Vous devez avoir suivi le compte d'entreprise au préalable et configuré votre adresse e-mail Assurez-vous que l'administrateur peut lire le carnet d'adresses et utilisez l'application pour envoyer des messages. Remarque : Nous avons besoin du CorpID et du secret de l'administrateur Nous devons préparer ces éléments : Un compte d'entreprise WeChatLe compte entreprise a été suivi par les membres du département Il existe une application dans le compte entreprise qui peut envoyer des messages Un administrateur autorisé peut utiliser l'application pour envoyer des messages aux membres Nous souhaitons obtenir ces informations : Compte membre ID du département de l'organisation ID de l'application CropID Secret
Comment appeler l'interface WeChat ?
L'appel de l'interface WeChat nécessite un certificat pour appeler l'interface : access_token Access_token peut être obtenu via : CropID, Secret, mais le token obtenu est valable deux minutes
微信企业号接口调试工具传送门: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中文网!