环境说明

centos 7 版本

zabbix 6.0 版本

主机名

IP地址

备注

zabbix

192.168.10.150

服务端,同时自我监控
zabbix-2 192.168.10.151 客户端

一、自定义监控(监控系统用户登录数)

1、通过命令或脚本取出值

[root@zabbix-2 ~]# who | wc -l
1

2、编写客户端配置文件


[root@zabbix-2 ~]# vim /etc/zabbix/zabbix_agent2.conf
#开启key的特殊字符处理
UnsafeUserParameters=1
[root@zabbix-2 ~]# vim /etc/zabbix/zabbix_agent2.d/web.conf
#UserParameter=key,cmd,固定格式,key为名称,cmd为命令,可以是执行脚本的命令
UserParameter=check.who.number,who | wc -l
[root@zabbix-2 ~]# systemctl restart zabbix-agent2

3、客户端本地测试键值

[root@zabbix-2 ~]# zabbix_agent2 -t check.who.number
check.who.number                              [s|1]
#s表示类型文字,数字代表值

4、服务端测试键值

[root@zabbix ~]# yum install zabbix-get -y
#安装不成功,可能是源的问题,试试下面命令下载源
yum install -y https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm
sed -i 's#https://repo.zabbix.com/zabbix#https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix#g' /etc/yum.repos.d/zabbix.repo
#-s:客户端地址,-k:键值
[root@zabbix ~]# zabbix_get -s 192.168.10.151  -k check.who.number
1    #结果

5、服务端创建监控项

二、声音报警

三、邮件报警

1、创建触发器

 测试

  • 是否触发构建器
  • 是否触发声音报警

2、配置报警媒介

 #测试邮箱发送功能

3、修改报警模板

设置问题内容:

默认接收人:故障{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} 已恢复 !
恢复信息:
告警主机 :{HOSTNAME1}
告警时间 :{EVENT.DATE} {EVENT.TIME}
告警等级 :{TRIGGER.SEVERITY}
告警信息 : {TRIGGER.NAME}
告警项目 :{TRIGGER.KEY1}
问题详情 :{ITEM.NAME}:{ITEM.VALUE}
当前状态 :{TRIGGER.STATUS}:{ITEM.VALUE1}
事件 ID:{EVENT.ID}

3、创建用户

#用户与报警媒介相关联,注意创建用户要对服务器群组有读取权限才可以发送邮件

  • 创建用户群组

  • 创建用户

#这里密码我改为了redhat000

#注意类型选择你的Email-test,我这选错了

4、配置动作

5、测试

#打开多个终端

四、微信报警

1、注册企业微信

注册网址:企业微信

#创建企业后添加成员

2、创建部门并添加用户

3、创建机器人

 

4、配置脚本

#zabbix-server操作

[root@zabbix ~]# yum install python3-pip -y
[root@zabbix ~]# pip3 install requests -i https://pypi.tuna.tsinghua.edu.cn/simple
[root@zabbix ~]# cd /usr/local/share/zabbix/alertscripts/
[root@zabbix alertscripts]# vim wechat.py
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import requests
import json
import sys
import osheaders = {'Content-Type': 'application/json;charset=utf-8'}
api_url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=a00f90b4-85d1-4881-bc32-b8e0a43a4099" #机器人webhook地址
def msg(text):json_text= {"msgtype": "text","text": {"content": text},}print (requests.post(api_url,json.dumps(json_text),headers=headers).content)if __name__ == '__main__':text = sys.argv[1]msg(text)
[root@zabbix alertscripts]# chmod +x wechat.py
#测试
[root@zabbix alertscripts]# python3 wechat.py nh
b'{"errcode":0,"errmsg":"ok"}'

5、配置报警媒介

参数:
{ALERT.MESSAGE}

#报警模板在上面的邮件报警里

6、用户与报警媒介相关联

7、配置动作

8、测试

五、钉钉报警

1、创建群并添加机器人

【手机钉钉】 | 【电脑钉钉】 - 右上角【 + 】 - 【发起群聊】 - 【选人建群】 / 选择不同的群类型创建;

 2、编写脚本

[root@zabbix ~]# cd /usr/local/share/zabbix/alertscripts
[root@zabbix alertscripts]# vim dingding.py
#!/usr/bin/env python3
#coding:utf-8
#zabbix钉钉报警
import requests,json,sys,os,datetime
webhook="https://oapi.dingtalk.com/robot/send?access_token=6f3ea59d5a9de53d0db111111118e8f415a369f3b0d866a2dd7726"
user=sys.argv[1]
text=sys.argv[3]
data={"msgtype": "text","text": {"content": text},"at": {"atMobiles": [user],"isAtAll": False}
}
headers = {'Content-Type': 'application/json'}
x=requests.post(url=webhook,data=json.dumps(data),headers=headers)
if os.path.exists("/usr/lib/zabbix/logs/dingding.log"):f=open("/usr/lib/zabbix/logs/dingding.log","a+")
else:f=open("/usr/lib/zabbix/logs/dingding.log","w+")
f.write("\n"+"--"*30)
if x.json()["errcode"] == 0:f.write("\n"+str(datetime.datetime.now())+" "+str(user)+" "+"发送成功"+"\n"+str(text))f.close()
else:f.write("\n"+str(datetime.datetime.now()) + " " + str(user) + " " + "发送失败" + "\n" + str(text))f.close()
[root@zabbix alertscripts]# chmod +x dingding.py
[root@zabbix alertscripts]# chown zabbix:zabbix dingding.py
#创建log文件目录
[root@zabbix alertscripts]# mkdir -p /usr/lib/zabbix/logs
[root@zabbix alertscripts]# touch /usr/lib/zabbix/logs/dingding.log
[root@zabbix alertscripts]# chown zabbix:zabbix /usr/lib/zabbix/logs/dingding.log
#测试,必须加上你的自定义关键字zabbix
[root@zabbix alertscripts]# ./dingding.py a b "zabbix:test"

#在钉钉上查看

3、创建报警媒介

三个参数:

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

#模板信息在上面的邮件报警里面

4、用户添加报警媒介

5、配置动作

6、测试

完成!

【zabbix】自定义监控、邮件报警、企业微信报警、钉钉报警(详细)相关推荐

  1. zabbix自定义监控项及触发动作

    zabbix自定义监控项: 在上一篇文章中,我们通过添加模板,zabbix自动为我们创建了很多监控项,但是往往模板中的监控项并不能满足我们业务需要,我们时常需要自己根据业务需要创建一系列的监控项,也成 ...

  2. 【逗老师带你学IT】PRTG监控系统通过企业微信推送告警消息

    本文主要介绍如何让PRTG网络监控系统通过企业微信webhook接口发送告警信息 效果就是这样子的↑ PRTG简介 https://www.cn.paessler.com/ 产品主页 企业微信简介 h ...

  3. 【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息

    往期回顾: [逗老师带你学IT]PRTG监控系统通过企业微信推送告警消息 [逗老师带你学IT]PRTG HTTP API获取指定传感器流量图表图片 在往期的文章里,我们讲了 1.如何在PRTG产生告警 ...

  4. 70 Zabbix自定义监控项

    一.背景 zabbix本身提供了很多可选的监控项,可以满足绝大部分的监控需求.有时候由于业务需求,需要自定义监控项. 下面以创建监听TCP连接数自定义监控项为例,分享如何创建zabbix自定义监控项. ...

  5. zabbix企业微信号、钉钉报警脚本

    微信企业号报警脚本: #!/bin/bash CropID=''#企业号id Secret=''#企业号管理密码 GURL="https://qyapi.weixin.qq.com/cgi- ...

  6. Zabbix设置邮件告警+企业微信告警

    一.告警流程 首先要创建模板 在模板中创建触发器和监控项 创建监控项 创建触发器 1.1添加报警媒介 1.2声音设置 1.3创建用户 1.4配置动作 为触发器 系统用户登录数大于3 添加动作 1.5配 ...

  7. Zabbix自定义监控、自动报警

    zabbix使用(自定义监控.自动报警) 目录 自定义监控(制作模板) 在zabbix agent注册 在zabbix server注册(web操作) 监控报警 onealert配置 安装监控警报(n ...

  8. zabbix 自定义监控文本内容

    需求:监控服务器硬盘使用率是否有超过80%的 需要监控的文本 root@zabbix zabbix]# cat /etc/zabbix/scripts/data/monitor_disk.txt&qu ...

  9. zabbix自定义监控

    因为zabbix安装好后使用zabbix自带的模版只能监控cp.内存.硬盘占用之类的东西,下面我们要讲到的是怎么使用zabbix监控服务器的nginx进程. zabbix client:192.168 ...

  10. zabbix 自定义监控

    配置自定义监控,我们需要配置监控项的key,和监控项返回的value 添加自定义监控key的格式,在配置文件中添加 UserParameter=KEY_NAME[*],COMMOND KEY_NAME ...

最新文章

  1. 【Python】利用 pytesseract 识别图片中的数字
  2. 二十七、Node.js搭建第一个Express应用框架
  3. 反思代码能力提升点:foreach循环层数;命名契合;分块写;写注释;分步骤;多沟通
  4. ARM 汇编语言入门
  5. 如何搭建lamp(CentOS7+Apache+MySQL+PHP)环境
  6. 计算机毕业设计论文资料查找
  7. 中职学校计算机基础设施建设,以信息化推动中职学校计算机专业建设.doc
  8. Java链表数据结构刷题笔记总结
  9. 盘点人工智能高薪职位
  10. Oracle EBS AP付款(退款)无法产生损失(LOSS)会计分录
  11. bt5 note [7] 无线破解
  12. php 开启opcode,php 开启 opcode 测试
  13. html多行合并,Js表格多行合并实现,可对多个列进行处理
  14. 判断一个序列是否为栈的有效输出序列
  15. 时间管理自我管理的演讲稿
  16. 中电资讯-政府工作报告提出2022“金融新任务”;代表共话数字经济;代表提议建立全国统一金融信息数据库
  17. Bit、Byte、KB、MB(M)、GB(G)关系
  18. 树的应用:Tree Traversals Again
  19. 在Centos快速搭建dhcp服务器,详细讲解
  20. JAVA 语言程序设计与数据结构 教材课本源码 和 课后习题答案

热门文章

  1. 2021年除夕的html网页代码,2021年美观的春节倒计时代码
  2. springboot毕设项目高考填报志愿综合参考系统1kc8i(java+VUE+Mybatis+Maven+Mysql)
  3. 读写文本文件-StreamReader和StreamWriter
  4. KRPANO资源分析工具
  5. 仿百度文库/仿豆丁文库开源版MTCEO文库系统 v2.4
  6. 蓝桥杯.第几个幸运数字(数学_因子)
  7. 本科论文答辩开题报告ppt模板
  8. pdf转换为word比较少出现乱码的网站
  9. html下拉框第一个选项如何禁止选择
  10. LeetCode 374题