Multi Router Traffic Grapher
Aus Tuxfutter
Multi Router Traffic Grapher (MRTG) ist ein Perl-Skript, das an Hand einer Konfigurationsdatei (/etc/mrtg.cfg), Statistiken ausgeben kann.
Zur Ermittlung der Messdaten können entweder Daten des NET-SNMP-Daemons, oder aber Shell-Skripte verwendet werden.
Als Messdaten kann MRTG alle ganzzahligen Werte >= Null (sogenannte Natürliche Zahlen verarbeiten. Um dagegen auch negative Werte anzuzeigen, können die rrdtools verwendet werden.
Ein Beispiel aus einer mrtg.cfg zur Ermittlung des übertragenen Transfervolumens einer Einwahlverbindung:
Target[ppp.transfer]: `/home/hauke/bin/ppp-transfer.sh` Options[ppp.transfer]: nopercent,growright,gauge,nobanner MaxBytes[ppp.transfer]: 5000000000 Title[ppp.transfer]: Transferdaten ppp0 PageTop[ppp.transfer]: <h1>Transferdaten ppp0</h1> YLegend[ppp.transfer]: Bytes ShortLegend[ppp.transfer]: Bytes LegendI[ppp.transfer]: Empfangen LegendO[ppp.transfer]: Gesendet Legend1[ppp.transfer]: Bytes Legend2[ppp.transfer]: Bytes
Das dazugehörige Shell-Skript:
#!/bin/sh BYTES=`/sbin/ifconfig ppp0 | grep bytes` RX=`echo $BYTES | cut -d ":" -f 2 | cut -d " " -f 1` TX=`echo $BYTES | cut -d ":" -f 3 | cut -d " " -f 1` echo "$RX" echo "$TX" echo "0" echo "0"
mrtg erwartet immer vier Werte, eine Zahl pro Zeile:
- sogenannte "Eingehende" Daten
- sogenannte "Ausgehende" Daten
- 0 oder oftmals "uptime" oder "date"
- 0 oder oftmals "hostname" oder was man glaubt was nützlich wäre
Über einen Cronjob wird mrtg normalerweise alle fünf Minuten aufgerufen, um Daten zu sammeln. Ergebnis ist eine HTML-Seite mit entsprechenden Grafiken. Ein Beispiel gibt es bei http://athene.dnsalias.org/mrtg/ppp.transfer.html zu sehen.

