zabbix微信告警实践
首先你得有个企业号!!!具体操作步骤可以参考http://itnihao.blog.51cto.com/1741976/1733245,里面写的很详细就不重复了。
微信公众号注册并配置完成后,还需要让zabbix通过脚本实现微信告警,以下为本人使用的微信告警脚本
[root@alertscripts]# cat weixin.sh
#!/bin/bash
#可在微信公众号的设置菜单 => 权限管理 => 选择发送告警信息的管理组即可看到CropID和Secret信息
CropID="XXXXX"
Secret="XXXXX"
GURL="https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$CropID&corpsecret=$Secret" #微信公众号接口
Gtoken=$(/usr/bin/curl -s -G $GURL | /bin/awk -F\" '{print $4}') #根据填写的CropID和Secret获取发送信息的管理组的token
PURL="https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=$Gtoken" #接收告警信息的微信接口
UserID1="@all" #接收人ID,在微信公众号添加成员时自己填写的账号,建议以公司工号+姓名首字母组成
Msg=$3 #zabbix传过来的告警信息正文 function body(){
local int AppID=1 #应用ID,即你创建的用来发送信息的应用,在应用中心 => 我的应用里可以找到
local UserID=$UserID1 #接收人ID,填写@all表示发给所有关注该公众号的用户
local PartyID=1 #部门ID
local Totag="@all" #标签ID
printf '{\n'
printf '\t"touser": "'"$UserID"\"",\n"
printf '\t"toparty": "'"$PartyID"\"",\n"
printf '\t"totag": "'"Totag"\"",\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)" $PURL #发送告警信息
把该脚本放到放在zabbix服务端相关目录下,笔者这里是/usr/local/share/zabbix/alertscripts
[root@alertscripts]# chmod +x weixin.sh #赋予执行权限
[root@alertscripts]# sh weixin.sh d d 测试 #如果微信接收到“测试”消息就算是成功了
{"errcode":,"errmsg":"ok","invalidtag":"all tag invalid"}
然后是配置zabbix
1、创建告警内容
以下是笔者定制的告警内容,可供参考
警告:服务器 {HOSTNAME1} 出现异常 {TRIGGER.NAME} 告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:监控到{ITEM.NAME}为 :{ITEM.VALUE}
当前状态:异常
事件ID:{EVENT.ID} 请及时登录运维平台http://192.168.1.8:8888/dashboard.php进行处理! 特别声明:本邮件为系统告警程序自动发送,请勿回复!如有问题,请及时联系运维人员
2、添加微信到告警媒介
3、关联用户,这里接收人随便填,因为接收人已经在微信里配置好了,脚本也不接收该参数但这是必填项,所以这里填什么都可以
之后可以改一下触发器的阀值,测试微信的告警功能
zabbix微信告警实践的更多相关文章
- Zabbix微信告警
Zabbix微信告警 摘要 Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信 ...
- zabbix 微信告警配置
作者信息 邮箱:sijiayong000@163.com Q Q:601566386 Zabbix 微信告警 摘要:Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是 ...
- zabbix 微信告警机制
微信告警首先得注册一个企业微信,然后才能实现微信告警.自行百度 微信: 添加一个用户到上面创建的部门里面 创建完成记住 AgentID 和 Secret 下一步:记住企业 ID 1)编辑zabbix ...
- zabbix微信告警(虚拟机脚本测试成功,zabbix上收不到信息)
前言: 使用zabbix直接运行脚本又可以正常接收.但是登录zabbix web界面,测试! 动作显示已送达,但是微信并没有收到信息! 解决: 添加脚本参数,因为不添加脚本参数,调用不了你这个脚本 ...
- 6.zabbix微信告警3.2
原文地址: https://blog.cactifans.com/2016/01/27/zabbix%E5%BE%AE%E4%BF%A1%E5%91%8A%E8%AD%A6/ pdf : 链接: ht ...
- zabbix 微信告警脚本
#!/usr/bin/env python3 import requests import json import sys import os def access_token(Corpid,Secr ...
- 【zabbix】微信告警消息模版
下面给出了一个zabbix微信告警消息的模版, 消息最后加上#号和短横线的设计有两个原因: 1,zabbix的微信告警消息总是被截断,比如最后一个告警时间,如果没有最后一行#号,在微信上看的时候时间不 ...
- zabbix 告警实践分享 一键实现zabbix 电话、邮件、微信告警
众所周知Zabbix 是一款用来监控IT基础设施的监控套件,同时也具有很多方便运维人员使用的优秀功能,如:支持多条件告警,支持多种告警方式,支持多组模板.支持模板继承,因此在众多的开源运维监控软件中独 ...
- 在zabbix中实现发送带有图片的邮件和微信告警
1 python实现在4.2版本zabbix发送带有图片的报警邮件 我们通常收到的报警,都是文字,是把动作中的消息内容当成了正文参数传给脚本,然后邮件或者微信进行接收,往往只能看到当前值,无法直观的获 ...
随机推荐
- SDE用户密码到期
系统使用Arcsde for oracle 11g ,一直使用正常,突然有一天客户打电话说系统中地图不显示了.登陆GIS服务器,发现sde数据已经无法链接,错误提示:“ [ORA-28002: the ...
- 不安装Oracle客户端情况下使用PL/SQL 远程连接数据库
附送PL/SQL Developer11中文版下载地址 1.先到Oracle网站下载Instant Client : http://www.oracle.com/technetwork/databas ...
- vi 使用入门
几种模式: Normal Mode 命令模式 Insert Mode 编辑模式 Command-line Mode Visual Mode Select M ...
- 图片转base64
function convertImgToBase64(url, callback, outputFormat){ var canvas = document.createElement('CANVA ...
- Create a Listlink
#ifndef List_h__ #define List_h__ #include <stdio.h> struct ListNode { int value; ListNode* pN ...
- ReactJS学习笔记(一)
1.依赖的资源: <script type="text/javascript" src='../asset/react.js'></script> &l ...
- ARCGIS进行地理配准并加载到谷歌地球中查看
普通的地图图片如何能让其附有经纬度坐标和投影信息,如何能将普通的地图图片加载到诸如谷歌地球等相关的三维地球软件当中进行生产或学习使用呢,这就要用到gis当中常用的一种功能,叫做地理配准.地理配准并不复 ...
- python基础知识---数据结构之间的转换
- 在centos配置nginx+php的环境
环境版本:centos6.8/nginx1.10.2/php5.6.29 ====================安装nginx1.10.2==================== #根据centos ...
- php生成json或者xml数据
, ,'数据返回成功',$arr);echo $xml;?>