Solusi 1:
Saya juga menyarankan menggunakan VnStat
vnStat 1.6 by Teemu Toivola <tst at iki dot fi>
-q, --query query database
-h, --hours show hours
-d, --days show days
-m, --months show months
-w, --weeks show weeks
-t, --top10 show top10
-s, --short use short output
-u, --update update database
-i, --iface select interface (default: eth0)
-?, --help short help
-v, --version show version
-tr, --traffic calculate traffic
-l, --live show transfer rate in real time
eth0 / monthly
month rx | tx | total
-------------------------+--------------+--------------------------------------
Oct '09 225.70 GB | 798.52 GB | 1.00 TB %%%%:::::::::::::
Nov '09 138.46 GB | 616.54 GB | 755.01 GB %%::::::::::
eth0 / daily
day rx | tx | total
------------------------+-------------+----------------------------------------
31.12. 6.56 GB | 34.39 GB | 40.95 GB %%%::::::::::::::::
01.01. 1.13 GB | 746.92 MB | 1.86 GB
Solusi 2:
Apa yang dikatakan Zypher tentang rrdtool (dan hal lain yang menggunakannya sebagai backend - MRTG, Cacti, dll) mungkin benar. RRDTool dirancang untuk menjadi alat analisis tren historis 'rata-rata'. Ini rata-rata dan menyimpan penghitung dalam peningkatan yang semakin tidak pasti semakin lama semakin mundur.
Namun, ini dapat dikonfigurasi dengan mengatur RRA secara tepat. Saya mengaku tidak tahu apa-apa tentang mengonfigurasi ini, bagaimanapun, dan secara pribadi tidak pernah beruntung mendapatkannya tepat di luar set standar saya (15 menit, 8 jam, 1 minggu, 1 bulan, 1 tahun). Saya akan merekomendasikan melihat ke dalam mengkonfigurasi RRA untuk mengharapkan input harian dan memberi makan penghitung bandwidth Anda dari netstat. Anda akan mendapatkan beberapa data historis dan wawasan yang sangat bagus tentang pola penggunaan Anda.
Untuk menjawab masalah Anda saat ini, tentang memastikan Anda tidak melebihi batas bandwidth harian; Saya akan merekomendasikan untuk mengambil penghitung netstat setiap hari untuk antarmuka yang dimaksud. Anda dapat membandingkan lalu lintas kemarin pada waktu t dengan penghitung hari ini pada waktu t dan mencari tahu berapa banyak yang ditransfer. Skrip sederhana dengan penyimpanan file teks datar dari nilai sebelumnya mungkin sudah cukup. Anda kemudian dapat menonaktifkan antarmuka jika Anda mendeteksi bandwidth terlampaui atau memantaunya sepanjang hari dan memberi tahu admin jika Anda mendekati batas.
Untuk mendapatkan byte input pada sistem OSX, Anda dapat menggunakan serangkaian perintah berikut:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $7}'
Sebaliknya, keluaran dapat diperoleh dengan:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'
Anda dapat memasukkan penghitung yang relevan ke dalam file datar yang disimpan di suatu tempat dan membandingkannya dengan:
#!/bin/bash
set -e # exit if any error occurs
previous_days_bytes_xferred=`cat $flatfile_storage`
todays_bytes_xferred=`netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'`
if [ $((todays_bytes_xferred - previous_days_bytes_xferred)) -gt $threshold ]; then
DO SOME STUFF
fi
echo $todays_bytes_xferred > $flatfile_storage
Cukup sesuaikan pemrosesan netstat agar sesuai dengan sistem Anda (karena saya tahu Anda tidak menjalankan OSX).
Solusi 3:
Paket sysstat berisi utilitas sar. Sar adalah sistem "profiler" yang sangat dapat dikonfigurasi, karena tidak ada istilah yang lebih baik, yang mengumpulkan berbagai statistik pada interval yang telah ditentukan sebelumnya (cron). Ini disimpan dalam file biner, satu untuk setiap hari, yang biasanya diputar setiap minggu, tetapi dapat dikonfigurasi. Program sar dapat digunakan untuk mengeluarkan statistik dari file-file ini, dan hasilnya dapat dengan mudah dibuat grafiknya dengan program office atau gnuplot (preferensi pribadi saya).
http://pagesperso-orange.fr/sebastien.godard/ <=informasi Sar
http://www.gnuplot.info/ <=info gnuplot
Solusi 4:
Vnstat adalah monitor lalu lintas harian / mingguan / bulanan berbasis konsol yang hebat. Bahkan memungkinkan Anda untuk memantau lalu lintas secara waktu nyata yang berguna.
Ia juga menggunakan sangat sedikit sumber daya sistem;)
Solusi 5:
Anda menginginkan MRTG yang merupakan alat pemantau jaringan, yang menghasilkan semua grafik jaringan yang Anda lihat di web (dengan rdtool untuk mengubah angka menjadi gambar)
Jika Anda tidak ingin mengaturnya, atau hanya membutuhkan sesuatu yang lebih sederhana, Anda dapat menggunakan iptables untuk merekam transfer data.