Zypher'in rrdtool hakkında söylediği (ve onu arka uç olarak kullanan başka bir şey - MRTG, Kaktüsler vb.) Muhtemelen doğrudur. RRDTool, 'ortalamalı' bir tarihsel eğilim analiz aracı olacak şekilde tasarlanmıştır. Sayaçları gittikçe daha kararlı olmayan artışlarla ortalar ve depolar.
Ancak bu, RRA'ları doğru bir şekilde kurarak yapılandırılabilir. Bununla birlikte, bunların yapılandırılması hakkında kesinlikle hiçbir şey bilmediğimi itiraf ediyorum ve onları kişisel olarak standart setimin (15 dakika, 8 saat, 1 hafta, 1 ay, 1 yıl) ötesine getirme şansım olmadı. Günlük girişi beklemek ve bant genişliği sayacınızı netstat'tan beslemek için RRA'ları yapılandırmayı öneriyorum. Çok güzel geçmiş veriler ve kullanım alışkanlıklarınız hakkında bilgi edineceksiniz.
Mevcut sorununuzu yanıtlamak için günlük bant genişliği sınırını aşmamaya dikkat etme; Söz konusu arayüz için günlük netstat sayaçlarını almanızı tavsiye ederim. Dünkü trafiği t zamanındaki bugünkü sayaçlarla karşılaştırabilir ve ne kadar aktarıldığını öğrenebilirsiniz. Önceki değerin düz metin dosyası depolamasına sahip basit bir komut dosyası muhtemelen yeterli olacaktır. Daha sonra, bant genişliğini aşarsanız veya gün boyunca izlerseniz arayüzü devre dışı bırakabilir ve sınırınıza yaklaşıyorsanız bir yöneticiyi bilgilendirebilirsiniz.
Bir OSX sisteminde giriş baytlarını almak için aşağıdaki komut kümesini kullanabilirsiniz:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $7}'
Tersine, çıktı şu şekilde elde edilebilir:
netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'
İlgili sayaçları bir yerde saklanan düz bir dosyaya açabilir ve aşağıdakilerle karşılaştırabilirsiniz:
#!/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
Netstat işlemesini sisteminize uyacak şekilde ayarlayın (OSX kullanmadığınızı bildiğim için).