Chociaż dzień powoli zbliża się do końca, to pomyślałem, że może uda mi się jeszcze jakiś wpis wypuścić – niestety w czekających na ostatnie szlify nie znalazłem nic takiego, za co chciałbym się teraz brać, więc nie pozostało nic innego, jak zabrać się za jakiś nowy temat.

Zerknąłem do Trello, gdzie znajduje się małe centrum zarządzania różnymi projektami (wsparte innymi aplikacjami/usługami), w tym projektem o chyba jednoznacznej nazwie „Webinsider: Wpisy”. Niestety na liście tematów do opracowania w najbliższym czasie nie znalazłem nic „szybkiego i lekkiego”, tak by nie siedzieć nad tematem do późnego wieczora.

Został katalog z notatkami tekstowymi (najzwyklejsze notatki tekstowe), gdzie zapisuje różne informacje związane m.in. z konfiguracją serwerów – i to był strzał w dziesiątkę, bo znalazłem tam bohatera dzisiejszego wpisu…

vnStat – tekstowy monitor ruchu sieciowego (Linux, BSD)

vnStat to proste narzędzie działające bezpośrednio w konsoli (czyli w trybie tekstowym), za pomocą którego możemy monitorować i analizować ruch sieciowy generowany przez nas serwer (lub komputer, np. Raspberry Pi).

Wprawdzie w większości przypadków dostawcy usług/serwerów VPS oferują w panelu jakąś formę monitorowania ruchu sieciowego, to warto – choćby na potrzeby własnych raportów – prowadzić tego typu monitoring również samodzielnie.

W systemie Debian (i Ubuntu) program zainstalujemy za pomocą polecenia:

sudo apt-get install vnstat

I to właściwie tyle, nie bardzo jest tu co konfigurować – od razu można korzystać, choć oczywiście statystyki będą się zapełniać z czasem.

Jeśli pojawi się błąd informujący o braku bazy danych – jeszcze nigdy mi się to nie przydarzyło, ale skoro mam w notatkach, to się podzielę – należy taką bazę utworzyć ręcznie/samodzielnie dla wybranego interfejsu sieciowego:

sudo vnstat -u -i eth0

W tym przypadku jest to baza dla  interfejsu eth0, czyli zazwyczaj głównego interfejsu sieciowego (główna karta LAN).

Listę interfejsów sieciowych w swoim systemie sprawdzicie za pomocą polecenia:

ip addr

Na koniec należy jeszcze zrestartować usługę vnStat:

sudo /etc/init.d/vnstat restart

Ogólne statystyki sprawdzicie za pomocą polecenia:

vnstat

To samo, ale w wersji skróconej (preferuje) sprawdzicie za pomocą komendy:

vnstat -s

                      rx      /      tx      /     total    /   estimated
 eth0:
       Mar '16    951.53 MiB  /    5.30 GiB  /    6.22 GiB  /   73.11 GiB
     yesterday    326.99 MiB  /    1.30 GiB  /    1.62 GiB
         today    257.15 MiB  /    2.46 GiB  /    2.72 GiB  /    4.25 GiB

Z przydatniejszych (choć nie zawsze) opcji warto wymienić m.in. statystyki miesięczne:

vnstat -m

Dzienne:

vnstat -d

Tygodniowe:

vnstat -w

Godzinowe:

vnstat -m

Top 10, czyli dni z największym ruchem:

vnstat -t

Kalkulacja/analiza ruchu przez 5 sekund:

vnstat -tr

eth0  /  top 10

    #      day          rx      |     tx      |    total    |   avg. rate
   -----------------------------+-------------+-------------+---------------
    1   02/19/2016     6.17 GiB |  747.19 MiB |    6.90 GiB |  670.21 kbit/s
    2   02/26/2016     1.09 GiB |    5.66 GiB |    6.75 GiB |  655.69 kbit/s
    3   02/29/2016   873.54 MiB |    1.80 GiB |    2.65 GiB |  257.59 kbit/s
    4   02/23/2016   565.59 MiB |    1.83 GiB |    2.38 GiB |  231.38 kbit/s
    5   02/24/2016   568.58 MiB |    1.65 GiB |    2.20 GiB |  213.93 kbit/s
    6   02/25/2016   580.38 MiB |    1.60 GiB |    2.17 GiB |  210.36 kbit/s
    7   02/22/2016   595.02 MiB |    1.41 GiB |    1.99 GiB |  192.83 kbit/s
    8   02/27/2016   597.01 MiB |    1.39 GiB |    1.97 GiB |  191.60 kbit/s
    9   02/28/2016   378.18 MiB |    1.52 GiB |    1.89 GiB |  183.64 kbit/s
   10   03/01/2016   367.39 MiB |    1.53 GiB |    1.89 GiB |  183.07 kbit/s
   -----------------------------+-------------+-------------+---------------

I na koniec podgląd „na żywo”:

vnstat -l

Gdy chcecie sprawdzić statystyki dla konkretnego interfejsu sieciowego wystarczy dodać do zapytania dodatkowy parametr:

-i [nazwa_interfejsu_sieciowego]

Np.:

vnstat -s -i eth0

Pozostałe/wszystkie dostępne opcje/parametry sprawdzicie za pomocą polecenia:

vnstat --help

vnStat image output (vnstati)

By nie było za nudno – możemy generować również wykresy w formie graficznej (np. do prezentowania na stronie). W tym celu instalujemy „dodatek” do programu vnStat, który będzie tworzył wykresy w formie graficznej:

sudo apt-get install vnstati

Korzystanie z tego programu jest dość podobne, z tym, że podajemy dodatkowy parametr – nazwę pliku do którego zostanie zapisany wykres:

vnstati -o /ścieżka/gdzie/zapisać/plik.png -[parametr]

Np.

vnstati -o vnstat01.png -s

Dzięki czemu otrzymamy wykres podobny do tego:

linux_vnstat_vnstati_summary01

Jeśli chcecie wybrać konkretny interfejs sieciowy, to wystarczy dodać dodatkowy parametr do polecenia:

vnstati -i [nazwa_interfejsu_sieciowego] -o /ścieżka/gdzie/zapisać/plik.png -[parametr]

Np.:

vnstati -i eth0 -o vnstat01.png -s

Wszystkie dostępne opcje sprawdzicie za pomocą polecenia:

vnstati --help

Generalnie większość parametrów pokrywa się z tymi dostępnymi dla polecenia vnstat, choć są wyjątki, dlatego warto zerknąć do pomocy.

(!) Zgłoś błąd na stronie
Pomogłem? To może postawisz mi wirtualną kawę?
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Patryk