zabbix3.0微信邮件报警

Zabbix 邮件微信报警

分2大部分:

1.Zabbix服务器端配置

邮件服务安装配置

2.Web端服务配置

服务器端的设置:

系统 cenots 6.5   2.6.32-431.el6.x86_64

安装邮件发送服务:

[[email protected] ~]# wget http://sourceforge.net/projects/heirloom/files/latest/download?source=files

[[email protected] ~]# mv download\?source\=files mailx-12.4.tar.bz2

[[email protected] ~]# tar xf mailx-12.4.tar.bz2

[[email protected] ~]# cd mailx-12.4

打个补丁才可以用:

[[email protected] mailx-12.4]# patch -Np1 -i mailx-12.4-openssl_1.0.0_build_fix-1.patch

patching file makeconfig

patching file openssl.c

[[email protected] mailx-12.4]# make

[[email protected] mailx-12.4]# make install UCBINSTALL=/usr/bin/install

下面为输出信息:

test -d /usr/local/bin || mkdir -p /usr/local/bin

/usr/bin/install -c mailx /usr/local/bin/mailx

strip /usr/local/bin/mailx

test -d /usr/local/share/man/man1 || mkdir -p /usr/local/share/man/man1

/usr/bin/install -c -m 644 mailx.1 /usr/local/share/man/man1/mailx.1

test -d /etc || mkdir -p /etc

test -f /etc/nail.rc || \

/usr/bin/install -c -m 644 nail.rc /etc/nail.rc

[[email protected] mailx-12.4]# vim /etc/nail.rc

编辑配置文件最下面加上:修改为你自己的

set [email protected] smtp=smtp.163.com

set [email protected] smtp-auth-password=邮箱密码

set smtp-auth=login

[[email protected]host mailx-12.4]# which mailx

/usr/local/bin/mailx

[[email protected] mailx-12.4]# cd /bin

[[email protected] bin]# ln -s /usr/local/bin/mailx mail

[[email protected] bin]# mail -V

12.4 7/29/08

[[email protected] bin]# mail -s "Message"  [email protected] < /tmp/yum_save_tx-2016-11-10-17-274YsBZQ.yumtx

[[email protected] bin]# echo $?

0

=======================邮件发送成功!==============================

Zabbix 报警脚本:

邮件:

[[email protected] alertscripts]# vim sendmail.sh#!/bin/bash

echo "$3" > /tmp/zabbix_mail.txt  #此文件要有zabbix 权限不然乱码

dos2unix -k /tmp/zabbix_mail.txt

/bin/mail -s "$2" $1 < /tmp/zabbix_mail.txt

Zabbix server 配置文件修改

[[email protected] ~]# vim /usr/local/zabbix/etc/zabbix_server.conf

添加或修改为下面这句:

AlertScriptsPath=/usr/local/zabbix/alertscripts  #开启zabbix调用脚本存放路径位置

重启zabbix服务生效

[[email protected] ~]# /etc/init.d/zabbix_server restart

微信:

申请微信企业号

建立部门 和添加成员(接收消息的)

查看部门id

新建应用

查看应用id 和添加接收消息用户

查看corpid

查看管理组凭证密钥

脚本:修改红色的为你自己的企业号对应的。

[[email protected] alertscripts]# vim weixin.py

#!/usr/bin/python

#_*_coding:utf-8 _*_

__author__ = ‘lvnian‘

import urllib,urllib2

import json

import sys

def gettoken(corpid,corpsecret):

gettoken_url = ‘https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=‘ + corpid + ‘&corpsecret=‘ + corpsecret

try:

token_file = urllib2.urlopen(gettoken_url)

except urllib2.HTTPError as e:

print e.code

print e.read().decode("utf8")

sys.exit()

token_data = token_file.read().decode(‘utf-8‘)

token_json = json.loads(token_data)

token_json.keys()

token = token_json[‘access_token‘]

return token

def senddata(access_token,user,content):

send_url = ‘https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=‘ + access_token

send_values = {

"touser":user ,    #企业号中的用户帐号,在zabbix用户Media中配置,如果配置不正常,将按部门发送。

"toparty":"1",    #企业号中的部门id

"msgtype":"text",  #消息类型。

"agentid":"2",     #企业号中的应用id,

"text":{

"content":content

},

"safe":"0"

}

send_data = json.dumps(send_values, ensure_ascii=False)

send_request = urllib2.Request(send_url, send_data)

response = json.loads(urllib2.urlopen(send_request).read())

print str(response)

if __name__ == ‘__main__‘:

user = str(sys.argv[1])     #zabbix传过来的第一个参数

subject = str(sys.argv[2])  #zabbix传过来的第二个参数

content = str(sys.argv[3])  #zabbix传过来的第三个参数

corpid =  ‘wxdgfhshs3f1bba2jinc‘   #CorpID是企业号的标识

corpsecret = ‘3NDb5cKp-ViudjtgsiJ6Yw_R_jRj2cUdsgTmFLsOQGQYGPcc5wNLhPiAyTnpjinc‘  #corpsecretSecret是管理组凭证密钥

accesstoken = gettoken(corpid,corpsecret)

senddata(accesstoken,user,content)

给予执行权限:

[[email protected] alertscripts]# chown zabbix.zabbix sendmail.sh weixin.py

[[email protected] alertscripts]# chmod +x sendmail.sh weixin.py

Web端配置

1登录你的zabbix     -- 管理 – 报警媒介

 

 

 

创建媒体类型

 

 

创建邮件的:

 

 

创建微信的

 

 

       2再找到—配置 --- 动作

 

 

 

创建动作 (email  和 微信 相同)

 

 

 

配置动作 (email  和 微信 基本相同,注意 操作配置 里面的 仅送到选项 要选择不同的)

 

找到 –管理 – 用户

 

 

选择报警媒介 – 添加 (我这里是添加过的)

 

创建邮件报警媒介 ,收件人那里要写正确,可以多个用逗号分隔

 

 

创建微信的

到此就结束了!

 

下面测试

停止一台服务器上zabbix_agentd服务

[[email protected] ~]# netstat -lntp |grep 10050

tcp        0      0 192.168.11.57:10050         0.0.0.0:*                   LISTEN      20537/zabbix_agentd

[[email protected] ~]# service zabbix_agentd stop

Shutting down zabbix_agentd:                               [  OK  ]

[[email protected] ~]# netstat -lntp |grep 10050

[[email protected] ~]#

等待几分钟 zabbix服务端监测不到就会触发报警了

发送细节状态:

收取到的邮件:

微信收到的:

 

 

时间: 2024-10-12 17:05:19

zabbix3.0微信邮件报警的相关文章

Zabbix2.0和Zabbix3.0设置邮件报警教程

============================== Zabbix2.0邮件服务器配置 ================================ 1.Zabbixe服务器配置邮件发送 cat >> /etc/mail.rc <<EOF set [email protected] set smtp=smtp.139.com set [email protected] set smtp-auth-password=hengtai set smtp-auth=login

zabbix3.0配置邮件报警

1打开管理,报警媒介类型输入自己要做发送报警的邮箱 账号密码 smtp地址 2.填写收件人 3.新建动作 默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障! 默认信息: 告警主机:{HOSTNAME1} 告警时间:{EVENT.DATE} {EVENT.TIME} 告警等级:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警项目:{TRIGGER.KEY1} 问题详情:{ITEM.NAME}

zabbix 3.0监控邮件报警

zabbix 3.0 监控邮件报警 1.在监控服务器的/usr/local/zabbix/bin创建发送邮件脚本  vim send.py #!/usr/bin/env python  # -*- coding: utf-8 -*-  #!/usr/bmport pdb  import smtplib import string import time import sys reload(sys) sys.setdefaultencoding('utf-8') #pdb.set_trace() 

zabbix3.0.9邮件告警

设置mailx发送邮件的账号 yum -y install mailx ln -s /bin/mailx /bin/mail cat /etc/mail.rc //内容如下 set from=123456@126.com set smtp=smtp.126.com set smtp-auth-user=123456 set smtp-auth-password=123456 set smtp-auth=login 发送邮件测试 echo  test | mail -s " test" 

zabbix 3.0.2邮件报警

sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php.bash perl和web站点使用. 请注意,不是sendmail.我第一次看到这个名字,直接yum install -y sendmail了 然后下面就蒙圈了. 下载软件 wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.

Zabbix3.0 自动邮件报障

Zabbix3.0以后,自带的邮件报警支持SSL验证了, 但是仍然没有发送复数个邮箱以及CC,BCC的功能, 因此,我们还是得用别的方法来实现邮件报障. 实现方法有很多种,我用的是PHPmailer. http://files.cnblogs.com/files/justbio/PHPMailer-master.zip 这个是比较新的PHPmailer,下载后解压到文件夹. cd /usr/lib/zabbix/alertscripts/ unzip PHPMailer-master.zip 编

zabbix3.2.1邮件报警设置

abbix监控服务端.客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常. 在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱. 具体操作: 以下操作在Zabbix监控服务端进行 然后安装那两个依赖包,命令是: yum install perl-Net-SSLeay perl-IO-Socket-SSL -y 解压软件,然后将sendemail复制到/usr/local/bin/目录下,并加上可执行权限,然后修改用户和群组. [

zabbix3.2.1邮件报警

zabbix监控服务端.客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常. 在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱. 具体操作: 以下操作在Zabbix监控服务端进行 然后安装那两个依赖包,命令是: yum install perl-Net-SSLeay perl-IO-Socket-SSL -y 解压软件,然后将sendemail复制到/usr/local/bin/目录下,并加上可执行权限,然后修改用户和群组.

zabbix-3.0.18 邮件告警

一.创建主机, 1.主机名:node1.com,可见名称:node1,如下图所示: 2.创建后入下图所示 二.添加监控项 1.添加http 服务监控项 2.添加成功后,如下图所示 三.创建触发器 四.创建报警媒介类型 1.在报警媒介类型中选择脚本,和发送脚本的名称等信息 2.在用户中创建信息接收人的联系方式 3.创建成功后入下图所示 五.创建动作 1.创建动作 2.创建动作条件 3.创建操作方式和步骤 六.查看事件状态 查看事件的状态 七.配置脚本 1.查看脚本存放目录 2.进入脚本目录,创建m