zabbix的各种报警机制实战
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix的各种报警机制实战相关的知识,希望对你有一定的参考价值。
参考技术A 动作: 指定将报警信息发送给谁/定义报警的信息/定义报警的类型(邮件 微信 电话)触发器: 设定某个监控项报警的阈值条件,可以实现报警提示(条件表达式),默认页面提示报警
https://www.jianshu.com/p/7d798423ec58
https://www.jianshu.com/p/a6c3a551f2ec
配置 ------ 主机 --- 对应主机的监控项
配置 ---- 主机 ---- 选择相应监控主机触发器 --- 创建触发器
页面正常
把zabbix_agent的nginx停掉
页面出现报错信息
把服务重新启动
报警信息消失
右上角的小人头--- 正在发送消息
配置 --- 动作 --- 将默认动作进行开启
管理 ---- 报警媒介类型 --- 创建媒介类型
点击右上角的小人头
再点击 添加
点击 更新
停掉nginx
三个用户,均已收到
https://work.weixin.qq.com/wework_admin/loginpage_wx?redirect_uri=https://work.weixin.qq.com/wework_admin/frame#profile
点击 成员加入
选择一种加入方式并加入
成员加入后,点击 通讯录 可查看加入的成员
收集相关程序代理id和密钥和企业id
程序代理id: 1000003
程序密钥: nR0WyfP7251_jg6vOSQ4SpTrZlrWS-SVm_2nyrXTf6Y
企业id: ww7a34cccfb9fd932b
在zabbix_server端找到脚本存放路径
编写脚本,填写对应的企业和程序信息
脚本执行语法格式: 帐号 + 主题 + 内容
用户名可以在通讯录找到
出现报错: ImportError: No module named requests ,缺少 requests 模块
报错解决:
再次测试:
成功收到测试信息!
管理 --- 报警媒介类型 -- 创建媒介类型
配置接收微信的人员
点击 小人头 --- 报警媒介 ---- 添加
点击 添加
点击 更新
把zabbix_agent的nginx服务停掉
发现报错
这是临时生成的日志没有写入权限
解决办法:
在zabbix_server端更改日志所主
再次测试
报警成功!
1).利用阿里大鱼(收费)
https://www.aliyun.com/product/sms?spm=a3142.7791109.0.0.34691fd2OVGqAY
2)利用onealert发送报警
https://caweb.aiops.com/#/integrate/monitor
这里我们使用 onealert
配置 --- 新建通知
集成 --- zabbix
2.获取alert agent包
3.安装配置alert
配置 --- 动作
在动作日志查看,发现已送达,但是我们选择的是免费版的,所以收不到邮件.....
Zabbix配置企业钉钉报警
Zabbix配置企业钉钉报警
一、Zabbix简介
1、zabbix(音同 z?bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
2、zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
3、zabbix由2部分构成,zabbix server与可选组件zabbix agent。
4、zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
二、完整的Zabbix监控平台包括:Zabbix-Server、Zabbix-DB、Zabbix-WEB、Zabbix-Client、Zabbix-Proxy;
二、钉钉告警配置
1、添加钉钉机器人
![](https://s4.51cto.com/images/blog/202004/03/efa518bec74cbaf8923f30ad89a913d5.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
选择钉钉自定义机器人
2、配置服务器
3、创建钉钉文件夹
/usr/local/zabbix/share/zabbix/alertscripts/dingding.py
将以下内容复制的dingding.py文件夹
#!/usr/bin/python3
import requests
import json
import sys
#告警群,测试环境
url = ‘https://oapi.dingtalk.com/robot/send?access_token=41f44092c9868f58f6637cf938de2adca0104bc06ff4bde85a133c17aa7b4a6f‘
def send_msg(msg):
"""
:param msg: 要发送的消息
:return: 200 or False
"""
#url = url
program = {"msgtype": "text", "text": {"content": msg}, }
headers = {‘Content-Type‘: ‘application/json‘}
try:
f = requests.post(url, data=json.dumps(program), headers=headers)
except Exception as e:
return False
return f.status_code
def main():
msg = sys.argv[1]
send_msg(msg)
if __name__ == ‘__main__‘:![](https://s4.51cto.com/images/blog/202004/03/ed5aadfd8682c18967dc8caf765f6998.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
main()
三、配置zabbix监控平台
1)创建报警媒介
2)添加报警媒介
3)添加动作
4)默认信息
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
告警主机:{HOSTNAME1}
告警时间:{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}已恢复!
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
服务器:{HOST.NAME}: 报警确认!
确认信息:"{ACK.MESSAGE}"
服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!
确认人:{USER.FULLNAME}
时间:{ACK.DATE} {ACK.TIME}
当前的问题是: {TRIGGER.NAME}
时间ID:{EVENT.ID}
5) 配置用户报警媒介
6、测试发送钉钉信息
以上是关于zabbix的各种报警机制实战的主要内容,如果未能解决你的问题,请参考以下文章