获取交换机带宽超过阀值就报警

244 篇文章 11 订阅
本文介绍了一种方法,通过脚本监控交换机的带宽使用情况,当带宽超过预设阀值时,系统将自动发送报警。内容包括基础环境配置如版本、内核和网络接口信息,以及具体的监控脚本实现。
摘要由CSDN通过智能技术生成

一、基础环境
1、版本

cat /etc/debian_version 
7.8

2、内核

uname -r
3.2.0-4-amd64

3、ip(eth0)

10.1.10.185

二、具体脚本

#!/bin/bash
#--------------------------------------------------
#Author:jimmygong
#Email:jimmygong@taomee.com
#FileName:shcnc.sh
#Function:获取交换机带宽超过阀值就发短消息 
#Version:1.0 
#Created:2015-11-12
#--------------------------------------------------
#apt-get -y install snmp curl links or yum -y install curl links net-snmp-utils
function get ()
{
    hostip='111.111.111.111'
    snmpc="222222222222"
    hostport="1111"
    timed="15"
    in1=$(snmpwalk -Ov -v 2c -c $snmpc $hostip IF-MIB::ifHCInOctets.$hostport)
    in1=${in1#*: }
    out1=$(snmpwalk -Ov -v 2c -c $snmpc $hostip IF-MIB::ifHCOutOctets.$hostport)
    out1=${out1#*: }
    sleep $timed
    in2=$(snmpwalk -Ov -v 2c -c $snmpc $hostip IF-MIB::ifHCInOctets.$hostport)
    in2=${in2#*: }
    out2=$(snmpwalk -Ov -v 2c -c $snmpc $hostip IF-MIB::ifHCOutOctets.$hostport)
    out2=${out2#*: }
    in=$((($in2-$in1)*8/1000000/$timed))
    out=$((($out2-$out1)*8/1000000/$timed))
    echo $in:$out
}
function send () 
{
    g=$(get)
    i=${g%:*}
    e=${g#*:}
    c=95
    telgroup=(11111111111)
    sign="222222222222222"
    if [[ $i -gt $c ]]
    then
        msg="shcnc%20ingress%20rate:%20${i}mbps%20>%20$c"
        for tt in ${telgroup[@]}
        do
            /usr/bin/links -dump "http://111.111.111.111/aaa/back.send?mobile=$tt&msg=$msg&sms_sign=$sign"
        done
    fi
    if [[ $e -gt $c ]]
    then
        msg="shcnc%20egress%20rate:%20${e}mbps%20>%20$c"
        for tt in ${telgroup[@]}
        do
            /usr/bin/curl "http://111.111.111.111/aaa/back.send?mobile=$tt&msg=$msg&sms_sign=$sign"
        done
    fi
}
send
exit 0

参考链接 :
获取交换机带宽超过阀值就报警 :

https://blog.51cto.com/u_7938217/1712358

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值