Zabbix通过网易邮箱、企业微信、钉钉整合实现实时告警

Zabbix可以通过多种方式将告警信息发送到指定人,常用的报警方式有邮件、微信、钉钉等。本次博文主要介绍这三种报警方式。

一、配置网易邮箱实现报警

本篇博文采用网易邮箱的方式实现报警!操作如下:



zabbix server需进行以下配置:

[[email protected] ~]# yum -y install perl-Net-SSLeay perl-IO-Socket-SSL
//安装所需依赖
[[email protected] ~]# wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
//下载sendEmail软件包
[[email protected] ~]# tar zxf sendEmail-v1.56.tar.gz -C /usr/src
[[email protected] ~]# cd /usr/src/sendEmail-v1.56/
[[email protected] sendEmail-v1.56]# cp -a sendEmail /usr/local/bin/
[[email protected] sendEmail-v1.56]# chmod +x /usr/local/bin/sendEmail
[[email protected] ~]# cd /usr/local/zabbix/share/zabbix/alertscripts
[[email protected] alertscripts]# vim sendEmail.sh         //编写测试脚本
#!/bin/bash
to=$1
subject=$2
body=$3
/usr/local/bin/sendEmail -o tls=no -f [email protected] -t "$to" -s smtp.163.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu [email protected] -xp abcd1234 -m "$body"

邮件内容各项解释:
-f [email protected] :发件人邮箱
-t [email protected] :收件人邮箱
-s smtp.163.com :发件人邮箱的 smtp 服务器
-u "我是邮件主题" :邮件的标题
-o message-content-type=html:邮件内容的格式为html 格式
-o message-charset=utf8:邮件内容编码
-xu [email protected]:发件人邮箱的用户名
-xp abcd1234:发件人邮箱授权码(就是我刚刚生成的那个授权码)
-m "我是邮件内容" :邮件的具体内容

[[email protected] alertscripts]# chmod +x sendEmail.sh
[[email protected] alertscripts]# chown zabbix.zabbix sendEmail.sh
//赋予脚本权限
[[email protected] alertscripts]# sh sendEmail.sh [email protected] test 123
Jan 30 16:40:04 zabbix sendEmail[2584]: Email was sent successfully!
//出现此消息表明发送成功

收到的邮件如下:

1)创建报警媒介

选择”管理→报警媒介→创建报警媒介“如下:

图中填写的三个参数:

{ALERT.SENDTO}            //收件人地址
{ALERT.SUBJECT}          //主题
{ALERT.MESSAGE}         //详细内容

2)将报警媒介关联到用户

选择“管理→用户→Admin→报警媒介”如下:



创建完成后,进行以下操作:

3)创建动作





添加的代码如下:

故障消息<br/>
主机:{HOSTNAME}<br/>
IP:{IPADDRESS}<br/>
监控项:{ITEM.NAME}<br/>
触发器:{TRIGGER.NAME}<br/>
键值:{ITEM.KEY}:{ITEM.VALUE}<br/>
时间:{DATE} {TIME}<br/>



4)配置触发器



5)测试邮件告警

[[email protected] ~]# systemctl stop zabbix-agent
//agent端将agent进程关闭

收到的邮件如下:

[[email protected] ~]# systemctl start zabbix-agent
//agent端将agent进程启动

收到的邮件如下:

实现邮件报警成功!

二、配置企业微信实现报警

要想实现企业微信报警,需自己注册一个企业微信,由于其过程过于简单,这里就略过了!

1)企业微信web页面设置

注册完成之后,进行以下操作:

可以向企业微信添加用户,这里就不添加了,以一个用户为例,查看用户的详细信息:

创建应用,如图:




到此为止,企业微信的注册和配置的内容已经介绍完毕了!

2)获取微信告警脚本

要想将告警信息发送到微信,就需要使用一个发送脚本,操作如下:

[[email protected] ~]# wget https://www.ixdba.net/zabbix/weixin_linux_amd64
[[email protected] ~]# mv weixin_linux_amd64 /usr/local/zabbix/share/zabbix/alertscripts/weixin
//脚本所在路径非常重要
[[email protected] ~]# chmod 755 /usr/local/zabbix/share/zabbix/alertscripts/weixin
[[email protected] ~]# chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/weixin
[[email protected] ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
//确认以下内容
AlertScriptsPath=usr/local/zabbix/share/zabbix/alertscripts
[[email protected] ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/
[[email protected] alertscripts]#  ./weixin --corpid=ww35e57441212e7560 --corpsecret=t10UEVBtSuW-00CJMYFnz5xxBhTvf6XCz2vcUY3xS8M --msg="test" --user=LvZhenJiang --agentid=1000007
{"errcode":0,"errmsg":"ok","invaliduser":""}
//测试微信脚本,出现此信息表示测试成功!

各配置项含义:
--corpid=:企业号里面的企业ID;
--corpsecret=:自建应用中的Secret的ID;
--msg=:发送消息的内容;
--use=:指定用户的名称,查看用户详情时可以查看到;
--agentid=:自建应用中的Agentid;

企业微信收到的消息如下:

3)zabbix web页面的配置

1)创建报警媒介

如图:

两个变量内容如下(图中的变量有误):

 --user={ALERT.SENDTO}
 --msg={ALERT.MESSAGE}

2)将报警媒介关联到用户

如图:



3)创建动作

如图:



图中添加的代码如下:

默认标题:
服务器:{HOST.NAME}发生:{TRIGGER.NAME}故障
消息内容:
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}


这样故障时发生的警告信息已经配置完成!接下来配置恢复操作发送的信息,如下:

图中的代码如下:

默认标题:
服务器:{HOST.NAME}:{TRIGGER.NAME}故障已恢复
消息内容:
告警主机:{HOST.NAME}
告警地址:{HOST.IP}
监控项目:{ITEM.NAME}
监控取值:{ITEM.LASTVALUE}
告警等级:{TRIGGER.SEVERITY}
当前状态:{TRIGGER.STATUS}
告警信息:{TRIGGER.NAME}
告警时间:{EVENT.DATE} {EVENT.TIME}
事件ID:{EVENT.ID}


至此已经配置完成!细心的朋友可能发现并没有创建触发器,因为刚才测试进行邮件测试的时候就已经创建了触发器,它们公用同一个触发器!

4)测试微信告警

[[email protected] ~]# systemctl stop zabbix-agent
//agent端将agent进程关闭

可以在以下界面查看消息是否发送成功!

企业微信收到的消息如下:

[[email protected] ~]# systemctl start zabbix-agent
//agent端将agent进程启动

企业微信收到的信息如下:

实现微信报警成功!

三、配置钉钉实现告警

1)关于钉钉机器人告警

钉钉类似于微信,但是偏向于办公方向,可以通过钉钉的群机器人功能,实现将告警信息通过机器人发送到钉钉群中。

群机器人时钉钉群的高级扩展功能。群机器人可以将第三方服务的信息聚合到群聊中,实现自动化的信息同步。

zabbix配置钉钉报警,相比微信,要简单很多,几分钟内即可完成配置,下面详细介绍!

2)添加钉钉机器人

关于钉钉的注册非常简单,这里就不过多的介绍了,注册完成登录到钉钉后,先发起一个群聊,加入接受钉钉告警信息的人员,如下:








注意:定义关键字时,必须根据实际情况来,也就是消息中包含的内容。建议使用定义关键字的方式!

机器人配置到此结束!

3)获取钉钉告警脚本

因为脚本中用到了requests,其是python的http客户端库,没有安装的按照以下方式进行安装:

[[email protected] ~]# yum -y install epel-release python-pip
[[email protected] ~]# pip install --upgrade pip
[[email protected] ~]# pip install requests
[[email protected] ~]# vim dingding.py        //自定编写脚本
#!/usr/bin/python
# -*- coding: utf-8 -*-

import requests
import json
import sys
import os

headers = {‘Content-Type‘: ‘application/json;charset=utf-8‘}
api_url = "https://oapi.dingtalk.com/robot/send?access_token=df27d0f8ed866576f0d213ededcf8bdc6a0a3d24bf1c904fcd58b14b606ec7c6"
#更改为自己机器人的网址,也就是刚才复制的内容

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)
也可通过以下路径获取
[[email protected] ~]# wget https://www.ixdba.net/zabbix/dingding.zip
[[email protected] ~]# unzip dingding.zip
[[email protected] ~]# mv dingding.py /usr/local/zabbix/share/zabbix/alertscripts/
//保证脚本所在的路径
[[email protected] ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/
[[email protected] alertscripts]# chmod 755 dingding.py
[[email protected] alertscripts]# chown zabbix.zabbix dingding.py
/usr/local/zabbix/share/zabbix/alertscripts/weixin
[[email protected] ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
//确认以下内容
AlertScriptsPath=usr/local/zabbix/share/zabbix/alertscripts
[[email protected] alertscripts]# ./dingding.py 监控报警 https://oapi.dingtalk.com/robot/send?access_token=df27d0f8ed866576f0d213ededcf8bdc6a0a3d24bf1c904fcd58b14b606ec7c6
{"errcode":0,"errmsg":"ok"}

钉钉收到的信息如下:

钉钉报警脚本配置完成!

4)zabbix web上配置钉钉报警

1)添加报警媒介


2)将报警媒介关联到用户





3)配置动作

如图:






由于照片中的代码与微信测试中的代码一致,这里就不复制出来了,有需要自行复制!

4)测试钉钉报警

[[email protected] ~]# systemctl stop zabbix-agent
//agent端将agent进程关闭

钉钉收到的信息如下:

[[email protected] ~]# systemctl start zabbix-agent
//agent端将agent进程开启

钉钉收到的信息如下:

实现钉钉报警完成!

————————本次博文到此为止,感谢阅读——————————

原文地址:https://blog.51cto.com/14157628/2468657

时间: 2024-10-25 22:26:46

Zabbix通过网易邮箱、企业微信、钉钉整合实现实时告警的相关文章

与企业微信、钉钉相争?CC转向企业服务

随着互联网与4G的逐渐渗透,国内产生了很多移动互联网形态下的创业机会和新的商业模式.随之而来的就是个人级服务市场的日益饱和. 经纬中国的联合创始人左凌烨先生曾在去年提到过,[美国的企业数2700万家左右,美国三家大的企业服务领军公司Oracle.SAP.Salesforce,市值总和3500亿美金左右;然而在人口基本等于美国以及欧洲人口之和的中国,目前有2200万左右的企业,在企业服务领域却连一家估值十亿美金的公司也没有.企业服务领域的浪潮才刚刚起来.] 目前,国内基于SaaS(Software

企业微信办公,这些方面钉钉比不了

企业微信和钉钉这对冤家均出自名门,但目前来看,市场份额钉钉似乎占了大多数,企业微信落了下风.那么企业微信的优势真的很不明显吗?其实并非如此,要说优势,虽然钉钉在人事方面做得更加到位,但这并不意味着在其他方面也是钉钉的天下.比如在沟通交流方面,企微背靠微信,这个绝对优势钉钉是无论如何也学不来的.从现在的情况来看,企业微信的优势有以下几点: 1.人脉光环:连接微信 企业微信之所以诞生,很大程度是由于微信在办公领域的是是非非.当年微信开始流行之后,似乎很自然的扛起了企业信息化的大旗,很多公司和组织都开

企业微信对外,钉钉对内,你选哪个?

原文:企业微信对外,钉钉对内,你选哪个? 作者分享自己对于企业微信与钉钉的定位.场景.市场前景的思考,不知道市场最终会给出什么答案. 一.企业微信年度发布会 2019年12月23日,企业微信2019年度发布会在广州举行.在现场,企业微信团队宣布在最新版本中升级群聊功能.开放客户朋友圈内测以及推出高效协同工具套装等重磅能力,进一步强化企业微信与微信生态互通能力. 由于我本人一直是微信小龙哥的忠实粉丝,也是一个B端领域产品工作者,同时又是一个亲身工作使用过钉钉和企业微信的用户,所以我对企业移动办公工

体验了一天企业微信,你的工作以后可能离不开它

你每天看多少次微信?有多少次是为了工作? 微信几乎是今天所有中国人的办公工具,从中小企业到大国企,甚至已经配备了 Skype.Sharepoint 之类办公工具的外企,都将越来越多的日常沟通.公告甚至文件传输放在微信上完成. 而现在的问题是,微信什么都有,而什么时候都得看,你也不知道是工作还是一个无关的推送,这让我们本来就很有限的时间更加零碎了. 最近浮出水面的企业微信,就是一个试图将你工作和生活分开的微信工具.<好奇心日报>拿到内测,我们使用这个工具工作了一天. 来看看未来用微信工作将会是什

(江西德迅)企业微信在 SaaS 领域“后发制人”

在当前日益激烈的商业环境中,如何降低人力.物力成本,如何提高业务效率.提升服务能力,是全球企业都希望解决的痛点. 因此,面向企业的 SaaS(软件即服务)服务大约从 2012 – 2013 年开始进入国内主流视野,最近几年有成为风口之势,除了资本推动下涌现出的主打团队协同的创业公司产品外,来自传统IT服务及互联网行业的巨头们也纷纷将目光投向该领域.在这条赛道上,各个企业对 SaaS 的判断标准不一,入局姿态各异.有侧重为企业提供一站式移动办公服务的金蝶云之家.今目标:有专注任务管理的明道.Wor

企业微信:腾讯的“佛系”办公江湖

在协同办公领域,近几年来移动办公伴随着智能手机蓬勃发展起来,特别是腾讯和阿里的入场,改变了业内中小微市场群雄逐鹿的大混战态势,开启了楚汉争霸的局面.相比于钉钉强势的攻城略地,企业微信的"淡定"让人感觉很佛系,但这就真的意味着企微对移动办公市场只满足于"猥琐发育"吗? 这个问题的确切答案可能只有腾讯高管心知肚明,但我们也可以从这款产品本身找到一些蛛丝马迹来推断腾讯的真实意图. 一. 红包拉客 怎样才能让一个陌生人快速对你产生好感?送钱.然而,无缘无故的送钱可能也会让一

企业微信应用发送消息接口调用次数超过限制

2019年12月19日应用发消息接口失败提醒: 应用:监控系统报警 调用接口:/cgi-bin/message/send(影响人数:17) 错误码: 45009:接口调用超过限制(错误次数:5164) 为避免影响正常使用,请你或相关的IT负责人尽快排查修复.如有疑问,可咨询企业微信客服团队. 垃圾告警信息多,导致接口调用次数耗光,需要修改触发器的阈值,或者修改表达式, 当前微信的应用发送告警数量的限制是 企业微信人数上限*30 原文地址:https://www.cnblogs.com/0916m

钉钉、企业微信等9款协同办公产品互相厮杀,你赌谁赢?

O2O企业的倒闭潮助长了企业服务的发展,在2C市场的短暂失意后,投资人将眼光聚焦在了慢工出细活的2B领域.云服务.大数据成为创业者口中的香饽饽,这样仿佛便可以显得自己更加高级. 其中,在复杂庞大的企业服务市场,基于SaaS的企业不断诞生,将行业变得更加细分与多样化.协同办公是SaaS创业的一大热点,目前该领域已经杀入了不少玩家,不乏BAT.硅谷背景的优秀创业者. 日前,纷享逍客拿到最新一轮融资,并宣布将转型协同办公的消息,令该领域国内的创业者再次沸腾.虽然看好看衰之声参差不齐,但也足以令协同办公

Zabbix配置企业钉钉报警

Zabbix配置企业钉钉报警 一.Zabbix简介1.zabbix(音同 z?bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.2.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题.3.zabbix由2部分构成,zabbix server与可选组件zabbix agent.4.zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/