linux配置oracle邮件告警,Linux监控(添加自定义监控项,配置邮件告警)

本文详细指导如何在Zabbix中添加自定义监控项,监控Web服务器80端口连接数,并通过图形展示。同时介绍了如何配置使用Python脚本发送163邮箱告警,包括设置邮件参数和测试告警触发过程。

一、添加自定义监控项

需求:监控某台web的80端口连接数,并出图。

步骤:

1):zabbix监控中心创建监控项目

2):针对该监控项目以图形展现

第一步(需要到客户端定义脚本)

[root@zhuji ~]# vim /usr/local/sbin/estab.sh

#!/bin/bash

##获取80端口并发连接数

netstat -ant |grep ':80 ' |grep -c ESTABLISHED

[root@zhuji ~]# chmod 755 /usr/local/sbin/estab.sh   (给权限,因为是zabbix要启动)

第二步(客户机上修改配置文件)

284    # UnsafeUserParameters=0          去掉#号,并修改为1,表示开启使用自定义脚本

297   UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh   自定义监控项的key为my.estab.count,后面的{*}里面写脚本的参数,如果没有参数可以省略,脚本为/usr/local/sbin/estab.sh

第三步 (重启zabbix-agent服务)

[root@congji ~]# systemctl restart zabbix-agent

第四步 (到服务端验证,执行命令,结果返回为0,表示脚本定义成功)

[root@zhuji ~]# zabbix_get -s 192.168.52.100 -p 10050 -k 'my.estab.count'

0

第五步 (在zabbix监控中心(浏览器)配置增加监控项目)

22ecd1432bca9e4728032114e3d2899d.png

名称自定义

键值填写my.estab.count

历史数据保留时长 (数据存储多长时间)

趋势数据存储周期

第六步 (图形-->创建图形)

d0d67c8a4d91a0ad9c09bd5661aa6d2b.png

第七步 (触发器-->创建触发器)

8a931ddde5e7ba24c3424eca0e383f79.png

038e731716b22970f25e534638740e16.png

二、配置邮件告警

使用163或者qq邮箱发告警邮箱

因为qq邮箱有时候会收不到告警,所以我们选用163邮箱来做实验

(一)登录你的163邮箱,设施开启P0P3,IMAP,SMTP服务,并记录授权码

ed5a20739e2b8c9e7f91a1d077d85033.png

(二)在监控中心设置邮件告警

管理--> 报警没接类型-->创建媒体类型

(虽然zabbix给了我们email的模板,但是我们用python写一个脚本,用脚本的形式来实现)

4f14d910addd8e2de2c67bc98e0fffe3.png

脚本的参数分别代表了

{ALERT.SENDTO}   收件人

{ALERT.SUBJECT}  主题

{ALERT.MESSAGE}  内容

(三)创建报警脚本mail.py

首先我们要知道配置文件里,把自定义脚本放在哪个目录下。

[root@zhuji ~]# vim /etc/zabbix/zabbix_server.conf  //搜索alert

我们发现路径是

AlertScriptsPath=/usr/lib/zabbix/alertscripts

[root@zhuji ~]# vim  /usr/lib/zabbix/alertscripts/mail.py

#!/usr/bin/env python

#-*- coding: UTF-8 -*-

import os,sys

reload(sys)

sys.setdefaultencoding('utf8')

import getopt

import smtplib

from email.MIMEText import MIMEText

from email.MIMEMultipart import MIMEMultipart

from  subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):

gserver = 'smtp.163.com'

gport = 25

try:

msg = MIMEText(unicode(content).encode('utf-8'))

msg['from'] = mailfrom

msg['to'] = mailto

msg['Reply-To'] = mailfrom

msg['Subject'] = subject

smtp = smtplib.SMTP(gserver, gport)

smtp.set_debuglevel(0)

smtp.ehlo()

smtp.login(username,password)

smtp.sendmail(mailfrom, mailto, msg.as_string())

smtp.close()

except Exception,err:

print "Send mail failed. Error: %s" % err

def main():

to=sys.argv[1]

subject=sys.argv[2]

content=sys.argv[3]

##定义QQ邮箱的账号和密码,你需要修改成你自己的账号和密码(请不要把真实的用户名和密码放到网上公开,否则你会死的很惨

sendqqmail('18681980**8@163.com', 'qq密码',18681980**8@163.com',to,subject,content)

if __name__ == "__main__":

main()

[root@zhuji ~]# chmod 755 /usr/lib/zabbix/alertscripts/mail.py

验证脚本是否正确可以尝试给自己邮箱发信息

[root@zhuji alertscripts]# python mail.py 18681980408@163.com nihao   nihaorxr

973eaba64212f14509e5cd272a0b6871.png

三、测试告警

测试告警

为了让zabbix报警,我们创建一个错误,创建一个触发器

4e9725155d818a82e91ac65c8e7f25b0.png

e8a0373657408f7c0dd1dece82e37c63.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值