今現在、サーバがどのくらいの回線帯域を使用しているか確認できるスクリプトを作りました。
ただしPerlですが参考まで。。
#! /usr/bin/perl
$interval = 2;
$line = `/sbin/ifconfig eth0 | grep "TX bytes"`;
$line =~ s/^.*TX bytes\:(\d+) .*$/$1/ ;
$previous = $line;
print "sampling interval is $interval sec.\n";
sleep $interval;
while (1){
$line = `/sbin/ifconfig eth0 | grep "TX bytes"`;
$line =~ s/^.*TX bytes\:(\d+) .*$/$1/ ;
$bytes = $line - $previous;
$previous = $line;
$Mbps = int ($bytes * 8 / 1024 / 1024 / $interval *100 ) / 100;
printf ("%12d bytes in %ssec / %3.2f Mbps\n", $bytes , $interval , $Mbps);
sleep $interval;
}
コンソールで実行するとMbps単位で出力します。
% .traffic.pl
sampling interval is 2 sec.
3827959 bytes in 2sec / 14.60 Mbps
3695406 bytes in 2sec / 14.09 Mbps
2831445 bytes in 2sec / 10.80 Mbps
3737917 bytes in 2sec / 14.25 Mbps
4167232 bytes in 2sec / 15.89 Mbps
3855147 bytes in 2sec / 14.70 Mbps
3276326 bytes in 2sec / 12.49 Mbps
3629611 bytes in 2sec / 13.84 Mbps
3169168 bytes in 2sec / 12.08 Mbps
1673286 bytes in 2sec / 6.38 Mbps
2655460 bytes in 2sec / 10.12 Mbps
4125430 bytes in 2sec / 15.73 Mbps
3399426 bytes in 2sec / 12.96 Mbps
3068414 bytes in 2sec / 11.70 Mbps
1149160 bytes in 2sec / 4.38 Mbps
138 bytes in 2sec / 0.00 Mbps
138 bytes in 2sec / 0.00 Mbps
138 bytes in 2sec / 0.00 Mbps
487 bytes in 2sec / 0.00 Mbps
1719 bytes in 2sec / 0.00 Mbps
204 bytes in 2sec / 0.00 Mbps
138 bytes in 2sec / 0.00 Mbps
138 bytes in 2sec / 0.00 Mbps
138 bytes in 2sec / 0.00 Mbps
33776 bytes in 2sec / 0.12 Mbps
138 bytes in 2sec / 0.00 Mbps
コメント