[ munin ] Fritzbox traffic monitoring

Wann benötige ich wieviel Traffic,
so hier,
so von meinem DSL?

Diese Frage kam mir, und der Wunsch den Traffic den ich über meine Fritzbox ins Internet blase mal Mengenmäßig zu erfassen.

Also musste ein Munin Script her, welches die entsprechenden Werte aus der Fritzbox Admininterface herrauszulesen.

Hier kommts :

#!/bin/sh
# 
# Plugin to monitor the fritzbox traffic
 
#%# family=auto
#%# capabilities=autoconf
 
# If run with the "autoconf"-parameter, give our opinion on wether we
# should be run on this system or not. This is optinal, and only used by
# munin-config. In the case of this plugin, we should most probably
# always be included.
 
if [ "$1" = "autoconf" ]; then
        echo yes
        exit 0
fi
 
# If run with the "config"-parameter, give out information on how the
# graphs should look. 
 
if [ "$1" = "config" ]; then
#        LOAD_WARN=${load_warn:-10}
#        LOAD_CRIT=${load_crit:-120}
#
#       # The title of the graph
        echo 'graph_title fritz.box dayly traffic'
#       # Arguments to "rrdtool graph". In this case, tell it that the
        # lower limit of the graph is '0', and that 1k=1000 (not 1024)
        echo 'graph_args --base 1000 -l 0'
        # The Y-axis label
        echo 'graph_vlabel Data'
        # Graph category. Defaults to 'other'
        echo 'graph_category network'
        # The fields. "label" is used in the legend. "label" is the only
        # required subfield. 
        echo 'load.label traffic'
        # These two are optional. They are only used if you have
        # configured your munin to tell a Nagios-server about any
        # problems
        #echo "load.warning $LOAD_WARN"
        #echo "load.critical $LOAD_CRIT"
        # This one is purely to add an explanation to the web page. The first
        # one is for the graph itself, while the second one is for the field
        # "load".
        echo 'graph_info The load average of the machine describes how many processes are in the run-queue (scheduled to run "immediately").'
        echo 'load.info Average load for the five minutes.'
 
        # Last, if run with the "config"-parameter, quit here (don't
        # display any data)
        exit 0
fi
 
# If not run with any parameters at all (or only unknown ones), do the
# real work - i.e. display the data. Almost always this will be
# "value" subfield for every data field.
 
###############################
#
# Change password here
#
###############################
 
FRITZBOX_ADMIN_PASSWORD='PASSWORD123' # Hier password ersetzen
 
################################
#
# End change password
#
################################
 
 
echo -n "load.value "
VAR=`wget -qO- --post-data "getpage=../html/de/menus/menu2.html&var:pagename=inetstat&var:menu=internet&var:lang=de&errorpage=../html/index.html&login:command/password=$FRITZBOX_ADMIN_PASSWORD" http://fritz.box/cgi-bin/webcm | cat`;
INL=`echo "$VAR" | grep  "var inl = " |  sed 's/[a-zA-Z =]*\([0-9]*\).*/\1/'`;
OUT=`echo "$VAR" | grep "var outl = " | sed 's/[a-zA-Z =]*\([0-9]*\).*/\1/'`;
let RES=$INL+$OUT;
echo $RES;

Enjoy using it.

Einziger Bug den ich bisher kenne,
bei mehr als 4GB traffic an einem Tag dropt irgendwie die Statistik irgendwie müsste mal herrausfinden woran das liegt.

[UPDATE]
Geänderte Version mit der Möglichkeit der Fernabfrage der Fritzbox gibts hier

This entry was posted in Pastes, Technik, Uncategorized and tagged , , , , , , . Bookmark the permalink.

4 Responses to [ munin ] Fritzbox traffic monitoring

  1. Peter Körner says:

    Prima Script! Könntest Du es in einer Variante anbieten, welches eine Abfrage über die Fernwartung erlaubt?

    – Anmelden mit User/PW über https://meinedomain.dyndns.org
    – Öffnen der Admin-UI mit dem Admin-PW
    – Danach Abfrage wie oben.

    Im Prinzip fehlt nur eine vorgeschaltete Authentisierung in der Fernwartung.

    Vielen Dank im voraus, Peter

  2. admin says:

    Oh .. keine schlechte Idee,
    müsste bei Zeiten mal schauen wie das von außen funktioniert.

    Mal sehen wann ich Zeit finde,
    hätte ich doch bloß mehr davon….

  3. Peter Körner says:

    Prima, würd mich freuen. Ist evtl. nur eine kleine Ergänzung. ;-)

  4. Pingback: [ munin ] Fritzbox traffic monitoring über die Fernwartungsschnittstelle | ohneKontur - der Blog

Leave a Reply

Your email address will not be published. Required fields are marked *