美文网首页自动化运维Zabbix
zabbix企业微信报警

zabbix企业微信报警

作者: 王忘杰 | 来源:发表于2022-04-05 13:08 被阅读0次

前言:通过企业微信小程序,实现zabbix自动注册和zabbix告警的微信消息推送。前言:通过企业微信小程序,实现zabbix自动注册和zabbix告警的微信消息推送。

一、整体架构

1、企业微信 - 创建zabbix机器人应用 - 取得企业微信ID、应用Agentld和Secret

2、编写zabbix机器人推送脚本,测试脚本

3、添加报警媒介

4、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息

5、配置Autoregistration actions自动注册,填写要发送的信息

6、进行测试

二、注册或使用已有的企业微信,查询企业微信ID

1、在企业微信 - 我的企业 - 企业信息 - 企业ID

2、创建zabbix机器人应用

企业微信后台 - 应用管理 - 应用 - 创建应用

3、查看Agentld和Secret

三、编写zabbix机器人脚本

准备工作

yum -y install epel-release

yum -y install python-pip

pip install requests

查询脚本存放位置

cat /etc/zabbix/zabbix_server.conf | grep AlertScript

可以看到脚本存放在/usr/lib/zabbix/alertscripts目录中

编写脚本 weixin.py并放入上面的目录 ,填入上面获得的三个值

#!/usr/bin/env python

#-*- coding: utf-8 -*-

import requests

import sys

import os

import json

import logging

logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',

datefmt = '%a, %d %b %Y %H:%M:%S',

filename = os.path.join('/tmp','weixin.log'),

filemode = 'a')

corpid='ww36e'

appsecret='5yFNqeTjrr3I'

agentid=1000002

token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret

req=requests.get(token_url)

accesstoken=req.json()['access_token']

msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken

touser=sys.argv[1]

subject=sys.argv[2]

#toparty='3|4|5|6'

message=sys.argv[2] + "\n\n" +sys.argv[3]

params={

"touser": touser,

# "toparty": toparty,

"msgtype": "text",

"agentid": agentid,

"text": {

"content": message

},

"safe":0

}

req=requests.post(msgsend_url, data=json.dumps(params))

logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)

赋予执行权限

chmod +x /usr/lib/zabbix/alertscripts/weixin.py

创建日志文件

touch /tmp/weixin.log

chown zabbix.zabbix /tmp/weixin.log

测试脚本,用户名为企业微信通讯录中的用户名,一般为拼音全拼,严格区分大小写!

/usr/lib/zabbix/alertscripts/weixin.py 用户名 '标题' '测试成功'

此时企业微信可以收到zaabix应用发来的信息。

四、添加报警媒介,测试媒介

zabbix后台 - 管理 - 报警媒介类型

名称 weixin

类型 脚本

脚本名称 weixin.py

脚本参数:

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

五、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息

配置 - 动作 Trigger actions - 创建动作

在 动作 中填写名称

在 操作 中编辑操作和恢复操作

1、操作

发送消息

zabbix管理员组

仅发送到微信

custom message

主题:服务器报警

消息:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

事件ID:{EVENT.ID}

2、恢复操作

通知所有参与者

custom message

主题:服务器已恢复

消息:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

事件ID:{EVENT.ID}

六、配置Autoregistration actions自动注册,填写要发送的信息

在Autoregistration actions自动注册中

发送消息

zabbix管理员组

仅送到weixin

Custom message

主题:

Linux主机自动注册到zabbix服务器

消息:

主机名:{HOST.HOST}

主机IP:{HOST.IP}

Agent端口:{HOST.PORT}

七、进行测试

新linux上线微信收到提示

linux重启微信收到提示

八、总结

很简单的啦

一、整体架构

1、企业微信 - 创建zabbix机器人应用 - 取得企业微信ID、应用Agentld和Secret

2、编写zabbix机器人推送脚本,测试脚本

3、添加报警媒介

4、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息

5、配置Autoregistration actions自动注册,填写要发送的信息

6、进行测试

二、注册或使用已有的企业微信,查询企业微信ID

1、在企业微信 - 我的企业 - 企业信息 - 企业ID

2、创建zabbix机器人应用

企业微信后台 - 应用管理 - 应用 - 创建应用

3、查看Agentld和Secret

三、编写zabbix机器人脚本

准备工作

yum -y install epel-release

yum -y install python-pip

pip install requests

查询脚本存放位置

cat /etc/zabbix/zabbix_server.conf | grep AlertScript

可以看到脚本存放在/usr/lib/zabbix/alertscripts目录中

编写脚本 weixin.py并放入上面的目录 ,填入上面获得的三个值

#!/usr/bin/env python

#-*- coding: utf-8 -*-

importrequests

importsys

importos

importjson

importlogging

logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',

datefmt = '%a, %d%b %Y %H:%M:%S',

filename = os.path.join('/tmp','weixin.log'),

filemode = 'a')

corpid='ww36e'

appsecret='5yFNqeTjrr3I'

agentid=1000002

token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret

req=requests.get(token_url)

accesstoken=req.json()['access_token']

msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken

touser=sys.argv[1]

subject=sys.argv[2]

#toparty='3|4|5|6'

message=sys.argv[2] + "\n\n" +sys.argv[3]

params={

"touser": touser,

# "toparty": toparty,

"msgtype": "text",

"agentid": agentid,

"text": {

"content": message

},

"safe":0

}

req=requests.post(msgsend_url, data=json.dumps(params))

logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)

赋予执行权限

chmod +x /usr/lib/zabbix/alertscripts/weixin.py

创建日志文件

touch /tmp/weixin.log

chown zabbix.zabbix /tmp/weixin.log

测试脚本,用户名为企业微信通讯录中的用户名,一般为拼音全拼,严格区分大小写!

/usr/lib/zabbix/alertscripts/weixin.py 用户名 '标题' '测试成功'

此时企业微信可以收到zaabix应用发来的信息。

四、添加报警媒介,测试媒介

zabbix后台 - 管理 - 报警媒介类型

名称 weixin

类型 脚本

脚本名称 weixin.py

脚本参数:

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

五、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息

配置 - 动作 Trigger actions - 创建动作

在 动作 中填写名称

在 操作 中编辑操作和恢复操作

1、操作

发送消息

zabbix管理员组

仅发送到微信

custom message

主题:服务器报警

消息:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

事件ID:{EVENT.ID}

2、恢复操作

通知所有参与者

custom message

主题:服务器已恢复

消息:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

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

事件ID:{EVENT.ID}

六、配置Autoregistration actions自动注册,填写要发送的信息

在Autoregistration actions自动注册中

发送消息

zabbix管理员组

仅送到weixin

Custom message

主题:

Linux主机自动注册到zabbix服务器

消息:

主机名:{HOST.HOST}

主机IP:{HOST.IP}

Agent端口:{HOST.PORT}

七、进行测试

新linux上线微信收到提示

linux重启微信收到提示

八、总结

很简单的啦

相关文章

  • 企业微信报警

    Zabbix企业微信报警shell脚本 Zabbix服务端配置

  • zabbix企业微信报警

    随着技术进化的越来越快,移动应用的普及。传统的短信邮件报警方式显的有点落伍。 微信接收报警变得越来越时髦。 好处就...

  • zabbix企业微信报警

    参考链接: https://www.abcdocker.com/abcdocker/2472 https://ww...

  • zabbix企业微信报警

    前言:通过企业微信小程序,实现zabbix自动注册和zabbix告警的微信消息推送。前言:通过企业微信小程序,实现...

  • Zabbix使用企业微信报警配置小结

    前言 从Zabbix 3.0开始就已经有很多小伙伴开始使用微信公众号或者企业微信配置Zabbix报警,当然这里还可...

  • zabbix配置微信报警

    前言:zabbix一般可以通过邮件以及脚本的方式进行告警,zabbix通过微信报警的方式也是通过脚本来实现 企业微...

  • zabbix相关

    配置企业微信报警 登录企业微信,选择应用于小程序-》创建应用-》按需创建用于zabbix监控的应用 进入刚才创建的...

  • zabbix报警-企业微信篇

    一、企业微信操作 我们所需要的信息无法从PC端或者MD(移动端)中获取,所以我们需要进入企业微信的网页 企业微信官...

  • zabbix一键安装

    zabbix微信报警脚本 https://github.com/X-Mars/Zabbix-Alert-WeCha...

  • zabbix5.0部署 and 监控docker容器状态 and

    zabbix5.0部署 and 监控docker容器状态 and 配置企业微信报警机器人 加权sudo gpass...

网友评论

    本文标题:zabbix企业微信报警

    本文链接:https://www.haomeiwen.com/subject/hzsksrtx.html