shell脚本:流量监控的三种方法

您所在的位置:网站首页 服务器流量统计方法 shell脚本:流量监控的三种方法

shell脚本:流量监控的三种方法

2024-07-17 05:30| 来源: 网络整理| 查看: 265

说明:监控服务器流量的方法,有很多种

  1)iftop工具

  2)ifconfig中会显示发送总流量(TX)和接收总流量(RX)

  3)通过查看/proc/net/dev可以获取到流量

 每种方法大同小异,ifconfig大家都很熟悉,这里不做介绍(思路和方法三一致,都是通过计算差值,取得平均值),简单介绍下iftop流量监控工具和方法三脚本监控

 

  iftop是一个工具,如果没有安装下

  yum install iftop -y 

 iftop界面关键字说明:

   TX:发送流量

   RX:接收流量

  TOTAL:总流量

  cumn:运行iftop到目前的总流量

  peak:流量峰值

  rates:每2s,10s,40s的平均流量

  iftop工具好处效果直观,一目了然

  方法三脚本显示平局流量

  思路:通过查看/proc/net/dev,指定网卡,获取出入和接收流量值,然后休息3秒,重新获取,取2者之差计算每秒的平局流量

  扩展:你可以当流量进行监控,当系统流量超过多少,进行邮件预警(服务器上装mailx客户端即可)

  脚本内容如下:

  

#通过外部传参的形式,获取指定网卡的流量 Net=$1 echo "IN-------------------------------OUT" #通过函数获取每秒流入和流出的流量 function net_work { IN_NET=`awk -F " +" '/'$Net'/{print $2}' /proc/net/dev` OUT_NET=`awk -F " +" '/'$Net'/{print $10}' /proc/net/dev` sleep 3 IN_NEW_NET=`awk -F " +" '/'$Net'/{print $2}' /proc/net/dev` OUT_NEW_NET=`awk -F " +" '/'$Net'/{print $10}' /proc/net/dev` IN_CHA=$(((IN_NEW_NET-IN_NET)/3)) OUT_CHA=$(((OUT_NEW_NET-OUT_NET)/3)) } #通过调用函数三次,获取三次的流入和流出流量,然后计算均值,这样误差较小 net_work IN1=$IN_CHA OUT1=$OUT_CHA sleep 1 net_work IN2=$IN_CHA OUT2=$OUT_CHA sleep 1 IN3=$IN_CHA OUT3=$OUT_CHA sleep 1 IN_AVG=$(((IN1+IN2+IN3)/3)) OUT_AVG=$(((OUT1+OUT2+OUT3)/3)) echo "$IN_AVG $OUT_AVG"

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3