继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Zabbix 微信报警——企业号版本

DevOps24h
关注TA
已关注
手记 1
粉丝 112
获赞 4
#!/bin/bash
###SCRIPT_NAME:weixin###
###send message from weixin for zabbix monitor###
###yangguang######V1-2016-06-12###
CropID='wx9a5706b19f11'
Secret='jWPdGauAGusDWkETQnIe-w-FhtHhSUD3rmsQ_ro87x8un8jbOAVrS'
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=1 # 企业号中的应用id
    local UserID=$1 # 部门成员idzabbix中定义的微信接收者
    local PartyID=2 # 部门id定义了范围组内成员都可接收到消息
    local Msg=$(echo "$@" | cut -d" " -f3-) # 过滤出zabbix中传递的第三个参数
    printf '{' 
            printf '"touser": "'"$User""","
            printf '"toparty": "'"$PartyID""","
            printf '"msgtype": "text",'
            printf '"agentid": "'" $AppID ""","
            printf '"text": {'
                        printf '	"content":"'"$Msg""" "
                        printf '},'
                        printf '"safe":"0"'
   printf '}'
   }
   /usr/bin/curl --data-ascii "$(body $1 $2 $3)" $PURL
  1. 创建媒体类型


    Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

    Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼


名称自定义

脚本名称这需要和服务器中的脚本名称一样。否则会在推送时候找不到脚本文件错误。

2.创建动作

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

主要是动作和操作

动作服务器发生问题以及恢复后通过脚本发送给终端的相关信息。

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

具体如下

名称告警

默认接收人故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

默认信息告警主机:{HOSTNAME1} {HOST.IP}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

恢复信息

恢复主旨恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

恢复信息告警主机:{HOSTNAME1} {HOST.IP}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

操作发送具体人和发送方式等定义

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

3.发送的用户报警属性定义

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

4.服务器端配置。

打开zabbix_server.conf 找到如下几行

### Option: AlertScriptsPath

# Full path to location of custom alert scripts.

# Default depends on compilation options.

#

# Mandatory: no

# Default:

AlertScriptsPath=/usr/local/zabbix/alertscripts ##自定义脚本的位置。

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

脚本内容为文章开头部分。

注意事项复制粘贴后要修改下格式

set fileformait=unix

5.企业公众账号设置

a)注意不是微信订阅号是企业号。

b)需要提供如下信息给脚本获取

i.组织部门ID

ii.应用ID

iii.CropID

iv.Secret

v.成员账号

6.企业号设置比较傻瓜

新建组织架构添加微信报警组并新建成员

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

新建应用关键

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

新建管理组及权限

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

以上三张图片覆盖了我们需要的信息和操作。

注意企业号、企业号、企业号。重要事说三遍

7.测试

Zabbix 微信æ¥è­¦ââä¼ä¸å·çæ¬ï¼

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP