发送信息配置
1. zabbix-web页面的警告设置
2. 配置发送qq消息
当触发器触发的时候就发送消息
2.1 首先打开动作
2.2 修改发送中文发送
当然这个时候默认的配置时发送的是英文:
修改成中文,点击进去:配置
修改的内容:
故障{TRIGGER.STATUS},服务器{HOSTNAME1}发生:{TRIGGER.NAME}故障!
告警时间: {EVENT.DATE} {EVENT.TIME}
告警主机: {HOST.NAME}
主机IP: {HOST.IP}
当前状态: {TRIGGER.STATUS}
告警信息: {TRIGGER.NAME}
问题详情: {ITEM.NAME}:{ITEM.VALUE}
告警等级: {TRIGGER.SEVERITY}
事件ID: {EVENT.ID}
2.3 设置发送邮件媒介
打开qq邮箱
zabbix的报警媒介的配置
添加发送给谁,先添加,再更新
2.4 然后测试,修改触发器的条件
设置中文发送后:
除了qq邮箱,163的邮箱也是一样的
3. 设置微信消息提醒
3.1 注册一个企业微信
3.2 创建一个应用
3.3 重要信息保留
邀请别人进入:
设置多人在这个zabbix里边:
3.4 python脚本
#!/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='企业id'
appsecret=' '
agentid=agentid
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)
这三个参数根据自己的,也就是上一步 保留的三个参数
corpid='企业id'
appsecret=' '
agentid=agentid
按照自己得填写即可
3.5 上传脚本到指定的目录
上传需要指定的目录
cd /usr/lib/zabbix/alertscripts
rz -E
或者复制编辑一个.sh文件
chmod +x weixin.py
测试
./weixin.py YangQing '1111' '2222'
报错:
[root@zabbix alertscripts]# ./weixin.py YangQing '1111'
Traceback (most recent call last):
File "./weixin.py", line 3, in <module>
import requests
解决:
yum install -y python-pip
pip install requests
./weixin.py YangQing '1111' '2222'
测试结果
3.6 zabbix-web上边操作
三个参数:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
脚本的三个参数都是zabbix内置变量,分别为:
报警收件人:{ALERT.SENDTO}
报警标题:{ALERT.SUBJECT}
报警内容:{ALERT.MESSAGE}
添加完报警媒介类型后勾选启用
添加要发送给谁:
3.7 测试
测试的时候报错:
报错查看:
解决:因为报错的是权限问题/tmp/weixin.log,tmp目录是root用户管理的,而zabbix是zabbix用户运行的,所以不能对/tmp目录进行操作
rm -f /tmp/weixin.log
修改触发器的条件:
测试:结果
4. qq邮箱也可以设置微信提醒
微信–设置----通用–辅助功能–qq邮箱设置,开启绑定账号即可
测试结果: