2024. április 20., szombat

Gyorskeresés

Útvonal

Cikkek » Számtech rovat

OpenWrt - statisztikák készítése

Adatforgalom, terhelés statisztika készítése rrdtool segítségével

[ ÚJ TESZT ]

Adatbázis létrehozása, írása

Az én konfigurációmban a HDD-m egyik partíciója a /opt, a másik a /mnt mappába van csatolva. A /opt-on tárolom a weblapokat, egyéb adatokat, így az rrd adatbázist is. Így a példában mindenhol erre a mappára hivatkozom, ezt mindenki módosítsa a saját igényeinek megfelelően.
Az rrd adatbázist, illetve későbbiekben az író, illetve a képeket generáló scripteket a /opt/rrd_traffic mappában tárolom.
Jelentkezzünk be ssh-n a routerre, majd hozzuk is létre ezt a mappát:

mkdir /opt/rrd_traffic

Az adatbázis létrehozásához adjuk ki a következő parancsot:

rrdtool create /opt/rrd_traffic/traffic.rrd \
--step 300 \
--start now \
DS:in:DERIVE:600:0:U \
DS:out:DERIVE:600:0:U \
DS:load:GAUGE:600:0:U \
RRA:AVERAGE:0.5:1:576 \
RRA:AVERAGE:0.5:6:672 \
RRA:AVERAGE:0.5:24:732 \
RRA:AVERAGE:0.5:144:1460

A parancs lefuttatása után létrejön a /opt/rrd_traffic/traffic.rrd Round-Robin adatbázisunk, ami 5 perces felbontásban tárol három adatot (bejövő, kimenő forgalom, valamint a load) 4 különböző részletességben a napi, heti, havi, valamint az éves statisztikákhoz.

Az adatbázis írását egy script fogja elvégezni, amit cron-ból ütemezni fogunk. A script legyen a /opt/rrd_traffic/updaterrd.sh.
Ehhez putty-ban írjuk be:

vi /opt/rrd_traffic/updaterrd.sh

Majd illesszük be a következő scriptet (nyomjunk i-t a vi-ban):

RRDFILE=/opt/rrd_traffic/traffic.rrd
WANIN=`ifconfig eth1 | grep bytes | awk -F ":" '{print $2}' | awk '{print $1}'`
WANOUT=`ifconfig eth1 | grep bytes | awk -F ":" '{print $3}' | awk '{print $1}'`
LD=`uptime | sed 's/.*average: //' | awk '{print($2)}' | sed "s/,//"`
rrdupdate $RRDFILE -t in:out:load N:$WANIN:$WANOUT:$LD

Majd az elmentéshez: ESC, majd :wq.
A scriptben az eth1-et cseréljük le a WAN interface nevére. D-Link DIR-825 esetében ez eth1.
A WAN interface név látható a webes felületen, illetve kideríthető az

uci show network.wan.ifname

paranccsal:

Ezután adjunk futtatási jogot a scriptre:

chmod +x /opt/rrd_traffic/updaterrd.sh

Az adatok automatikus frissítéséhez létre kell hoznunk egy cron job-ot, ami 5 percenként frissíti az adatbázist:

echo "*/5 * * * * /opt/rrd_traffic/updaterrd.sh" >> /etc/crontabs/root

Majd indítsuk is újra a cron-t:

/etc/init.d/cron restart

Így ettől a pillanattól kezdve gyűlnek is a statisztikai adataink.

A cikk még nem ért véget, kérlek, lapozz!

Hirdetés

Copyright © 2000-2024 PROHARDVER Informatikai Kft.