iNETstats

iNETstats jest skryptem Pythonowym do zbierania statystyk użycia pasma w sieciach opartych o LMS oraz skrypty iNET z prostym interfejsem w PHP.

przykładowy wykres iNETstats

Program parsuje statystyki wygenerowane przez rc.status z iNET, wykonuje update plików RRD oraz aktualizuje wykresy. Dzięki połączeniu z bazą LMSa w interfejsie PHP istnieje możliwość filtrowania wykresów po nazwie komputera, nazwie/nazwisku klienta lub grupie komputerów.

Wymagania

Skrypt wymaga pakietu Pythona rrdtool, w dystrybucjach debianowych zainstalujesz go poleceniem:


apt-get install python-rrdtool

Konfiguracja

Minimum konfiguracji inetstats.py:


# paths
IMGD = os.path.dirname(__file__) + "/img" # katalog z wykresami
RRDD = os.path.dirname(__file__) + "/rrd" # katalog z plikami RRD
INETD = "/etc/inet" # ścieżka do skryptów iNET

NETBASE = "172.20.0.0" # adres sieci (bez maski)

Skrypt PHP wymaga dostępu do katalogu lib LMSa, ponieważ korzysta z LMSDB. Konfigurację ścieżek oraz dostępu do bazy znajdziesz na początku tego skryptu - wstaw odpowiednie wartości:


$IMGD = 'img'; // katalog z wykresami

$_LMSLIBDIR = 'lib'; // ścieżka do katalogu lib/ LMSa

// konfiguracja bazy danych
$_dbtype = 'mysql';
$_dbhost = 'localhost';
$_dbport = '3306';
$_dbuser = 'lms';
$_dbpass = 'HASŁO_DO_BAZY_LMSA';
$_dbname = 'lms';

Konfiguracja w CRONie:


*/5 * * * * /usr/bin/python /ŚCIEŻKA/DO/inetstats.py &> /dev/null

Jako, że wykonywanie inetstats.py trochę trwa, skrypt na czas działania tworzy prosty lockfile, dzięki temu bezpieczne jest odpalanie go częściej (testowałem u siebie z wpisem w CRONie co 2 minuty). Oczywiście nie jest to wymagane, ponieważ inetstats.py tworzy pliki RRD z krokiem 300s.

Pobierz

inetstats-0.1.1.tar.gz

inetstats.png

inetstats-total.png

one-node.png

stat-1d.png