GNU/Linux >> Znalost Linux >  >> Linux

Linux:Jak měřit denní/měsíční síťový provoz?

Řešení 1:

Doporučuji také použít 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

Řešení 2:

To, co Zypher říkal o rrdtool (a o čemkoli jiném, co jej používá jako backend - MRTG, Cacti atd.), je pravděpodobně správné. RRDTool je navržen jako „průměrný“ nástroj pro analýzu historických trendů. Průměruje a ukládá počítadla ve stále více nerozhodných přírůstcích, čím dále zpět v čase to jde.

To je však konfigurovatelné vhodným nastavením RRA. Přiznám se však, že o jejich konfiguraci nevím absolutně nic a nikdy jsem osobně neměl štěstí, že bych je dostal nad rámec mého standardního nastavení (15 minut, 8 hodin, 1 týden, 1 měsíc, 1 rok). Doporučil bych podívat se na konfiguraci RRA tak, aby očekávaly denní vstup a napájely jej počítadlem šířky pásma z netstatu. Získáte velmi pěkná historická data a přehled o vašich vzorcích používání.

Chcete-li odpovědět na váš aktuální problém, ujistit se, že nepřekročíte denní limit šířky pásma; Doporučil bych chytit čítače netstat denně pro příslušné rozhraní. Můžete porovnat včerejší provoz v čase t s dnešními počítadly v čase t a zjistit, kolik bylo přeneseno. Pravděpodobně by stačil jednoduchý skript s plochým úložištěm textových souborů předchozí hodnoty. Pokud pak zjistíte překročení šířky pásma, můžete rozhraní deaktivovat nebo jej sledovat během dne a upozornit správce, pokud se blížíte k limitu.

Chcete-li získat vstupní bajty v systému OSX, můžete použít následující sadu příkazů:

netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $7}'

Výstup lze naopak získat pomocí:

netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'

Příslušná počítadla můžete vložit do plochého souboru někde uloženého a porovnat je s:

#!/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

Stačí upravit zpracování netstat tak, aby odpovídalo vašemu systému (protože vím, že nepoužíváte OSX).

Řešení 3:

Balíček sysstat obsahuje obslužný program sar. Sar je extrémně konfigurovatelný systémový "profiler", pro nedostatek lepšího termínu, který sbírá různé statistiky v předem definovaných intervalech (cron). Ty jsou uloženy v binárních souborech, jeden pro každý den, které se obvykle střídají týdně, ale lze je konfigurovat. K vytažení statistik z těchto souborů lze použít program sar a tyto výsledky lze snadno zobrazit v grafu pomocí libovolného kancelářského programu nebo gnuplotu (moje osobní preference).

http://pagesperso-orange.fr/sebastien.godard/ <=Informace o Sar
http://www.gnuplot.info/ <=informace o gnuplotu

Řešení 4:

Vnstat je skvělý denní / týdenní / měsíční monitor provozu založený na konzoli. Dokonce vám umožňuje sledovat provoz v reálném čase, což je praktické.

Také využívá velmi málo systémových prostředků;)

Řešení 5:

Chcete MRTG, což je nástroj pro monitorování sítě, je to věc, která vytváří všechny síťové grafy, které vidíte na webu (s nástrojem rdtool pro přeměnu čísel na obrázky)

Pokud se vám to nechce nastavovat, nebo jen potřebujete něco jednoduššího, můžete pro záznam datového přenosu použít iptables.


Linux
  1. Linux – Jak zrušit sdílení sítě pro aktuální proces?

  2. Linux – Jak přesměrovat provoz mezi linuxovými síťovými jmennými prostory?

  3. Jak monitorovat síťový provoz na Linuxu pomocí vnStat

  1. Jak používat příkaz Linux mtr

  2. Jak vytvořit síťové sdílení přes Samba na Linuxu

  3. Jak připojím síťový disk WD MyBook World v linuxu?

  1. Linux – jak měřit a předcházet posunu hodin?

  2. Jak monitorovat a protokolovat síťový provoz v systému Linux pomocí vnStat

  3. Jak nastavit preferované síťové rozhraní v linuxu