#!/bin/sh
rrdtool=/usr/bin
RRD_DB_DIR=/opt/rrd_db/
RRD_DB_FILE=/opt/rrd_db/eth0-stream.rrd
RRD_DB_PIC=/opt/rrd_pic/
NOW=`date +%s`
MONTH_IN_SEC=2629743
MONTH_AGO=$(($NOW-$MONTH_IN_SEC))
ONE_QUARTER_AGO=$(($NOW-900))
ONE_HOUR_AGO=$(($NOW-3600))
ONE_DAY_AGO=$(($NOW-86400))
ONE_WEEK_AGO=$(($NOW-604800))
ONE_MONTH_AGO=$(($NOW-2629743))
ONE_YEAR_AGO=$(($NOW-31556926))
do_rrdgraph(){
if [ $2 = "quarter" ]
then
echo quarter
flag=MINUTE:1:MINUTE:3:MINUTE:3:0:"%H:%M"
elif [ $2 = "hour" ]
then
echo hour
flag=MINUTE:3:MINUTE:6:MINUTE:6:0:"%H:%M"
elif [ $2 = "day" ]
then
echo day
flag=MINUTE:30:HOUR:1:HOUR:2:0:"%H:%M"
elif [ $2 = "week" ]
then
echo week
flag=DAY:1:DAY:2:DAY:1:0:"%m/%d"
elif [ $2 = "month" ]
then
echo month
flag=DAY:1:DAY:3:DAY:3:0:"%m/%d"
elif [ $2 = "year" ]
then
echo year
flag=MONTH:1:MONTH:2:MONTH:2:0:"%Y/%m"
fi
if [[ $3 != "" ]]
then
echo "resolution=$3"
resolution="-S $3"
else
echo "resolution=300"
resolution="-S 300"
fi
$rrdtool/rrdtool graph "${RRD_DB_PIC}eth0-stream_$2.png" -s $1 -h 120 -w 500 -a PNG ${resolution} -t "Stream of eth0 (last $2)" \
-v bytes \
--lower-limit=0 \
--units-exponent 0 \
--rigid \
--x-grid ${flag} \
DEF:a="$RRD_DB_FILE":eth0_in:AVERAGE \
DEF:b="$RRD_DB_FILE":eth0_out:AVERAGE \
LINE1:a#003300:"eth0_in. \: " \
GPRINT:a:AVERAGE:"%.2lf" \
LINE1:b#9900FF:"eth0_out. \:" \
GPRINT:b:AVERAGE:"%.2lf"
}
if [ -e "$RRD_DB_FILE" ]
then
echo "file exits: $RRD_DB_FILE"
VALUE=$(cat /proc/net/dev|grep eth0|sed 's/^.*://'|awk '{print $1":"$9}')
$rrdtool/rrdtool updatev $RRD_DB_FILE N:${VALUE}
do_rrdgraph $ONE_QUARTER_AGO quarter
do_rrdgraph $ONE_HOUR_AGO hour
do_rrdgraph $ONE_DAY_AGO day 600
do_rrdgraph $ONE_WEEK_AGO week 600
do_rrdgraph $ONE_MONTH_AGO month 600
do_rrdgraph $ONE_YEAR_AGO year 1800
else
$rrdtool/rrdtool create $RRD_DB_FILE --step 300 \
DS:eth0_in:COUNTER:600:0:12500000 \
DS:eth0_out:COUNTER:600:0:12500000 \
RRA:AVERAGE:0.5:1:600 \
RRA:AVERAGE:0.5:4:700 \
RRA:AVERAGE:0.5:24:775 \
RRA:AVERAGE:0.5:288:797
echo "file created:$RRD_DB_FILE"
fi
分享到:
相关推荐
【knm-master提取usb流量脚本】是一款专用于分析USB设备流量的工具,它通过Python编程语言实现,能够帮助用户捕获并解析USB接口上的数据包。这个脚本的使用对于那些需要监控或分析USB设备通信行为的场景非常有用,...
Linux流量监控脚本 上下行流量监控shell脚本
本脚本"linux主机流量实时监控脚本"专注于提供对以太网接口(如eth0-9)的流量监控功能,但不包含对虚拟化网卡的支持。如果需要监控虚拟化环境下的网络流量,用户需要自行对脚本进行相应的修改。 首先,让我们深入...
nagios 流量使用监控脚本,https://blog.csdn.net/jie_linux/article/details/85702712
- **图形化展示**:使用`gnuplot`等工具绘制流量趋势图,使数据更加直观易懂。 #### 四、总结 本文详细介绍了如何使用Linux脚本实现简单的网络流量监控功能。通过分析脚本的各个部分,我们可以了解到如何利用系统...
Altium PCB Logo 导入图片脚本工具,使用方法。进入pcb画图页面,点文件->运行脚本->浏览->来自文件->PCBLogoCreator.PRJSCR双击->RunConverterScript双击->load然后找到照片,需要黑白的,这个页面千万不要点×,...
Linux Advanced Routing & Traffic Control HOWTO 中提到的Qos完整示例中的脚本。在书中提到的那个网站已经挂了,所以重新上传一个。把里面的内容稍微改改就能拿来用了。。挺方便的
linux操作系统下使用shell编写流量监控脚本,可以实时监控系统流量,不说很强大,但是很实用!
【用友现金流量过滤脚本】是针对用友财务软件的一种自定义工具,主要用于处理企业的现金流量表数据,实现高效、精准的数据筛选和分析。在财务报表管理中,现金流量表是一个至关重要的部分,它反映了企业在一定会计...
总结来说,FAS流控系统是一个强大的网络流量管理工具,fas一键脚本、fas自启脚本、fas免流脚本以及fas搭建脚本则围绕FAS系统提供便捷的部署和管理方案。`fas.sh`作为这些功能的载体,是实现这些自动化过程的关键文件...
标题中的“Altium PCB Logo 导入脚本”指的是一个专门针对该软件的辅助工具,用于帮助设计师将自定义的Logo集成到PCB(印制电路板)设计中。这个脚本允许用户将单色位图图像方便地导入到PCB布局中,以便在最终产品上...
本人在长城杯、蓝桥杯、巅峰极客等线下AWD攻防比赛所用到的全部工具(如WAF、EDR、文件监控脚本、文件还原脚本、混淆战局工具、流量监控工具、批量拿分脚本模板)和脚本以及教程及笔记还有练习平台和靶场源码,并...
**ns2流量分析脚本模板详解** NS2(Network Simulator 2)是一个广泛使用的网络模拟器,它允许研究人员和工程师模拟各种网络环境和协议。在NS2中,编写脚本是进行流量分析的关键步骤,而“ns2流量分析脚本模板”...
这是一个Altium Designer通用PCB导入图片脚本,把PCBLogo.zip的解压到AD安装路径,如C:\Program Files (x86)\Altium\AD13。操作的步骤可以按照这个教程来制作...
linux监控网卡上传流量的自动化脚本 解决甜糖、猕猴桃等PCDN突然没上传又不恢复情况 著作权归作者所有。 商业转载请联系作者获得授权,非商业转载请注明出处。 链接:https://nctoro.com/daima/656.html 脚本功能: ...
为了帮助用户更有效地获取和管理自己的网络流量,各种流量获取工具和脚本应运而生。本文旨在介绍一种名为“流量获取.rar”的工具脚本,深入探讨其功能、使用方法以及潜在的安全性问题。 首先,我们必须明确“流量...
很小的一个脚本,里面有两个函数可以生成随即ip和随即时间,你可以自己构造模拟流量格式。默认流量模式为ip ip port port length time 运行:awk -f flowcreate.awk 文件名 会自动在文件后加入10条模拟流量 脚本是...
### Ixchariot 默认脚本使用说明 #### 概述 IxChariot是一款网络性能测试工具,通过模拟真实的应用程序行为来评估网络性能。它使用应用脚本来模拟实际应用程序在网络上的行为,这些脚本能够生成与真实应用程序相似...
提供python爬虫下载图片的自动化脚本源代码供大家参考,如有不理解的地方可以下载体验。个人原创,仅供参考。