vnstat

HW71

Neuer User
Mitglied seit
12 Aug 2008
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hi djtm,

erstmal vielen Dank für das Zusammenbasteln dieses tools, so dass es auf der FB läuft... :)

Ich habe es gerade mal ausprobiert und bei mir läuft es ohne Probleme - bis auf die Tatsache, dass die min / avg und max-Werte für den ein- und ausgehenden Traffic nicht korrekt angezeigt werden (bleiben immer auf 0.0 kb/s stehen) - aber die Diagramme zeigen zumindest entsprechende Balken an und auch die Gesamtzahl der Pakete und die übertragenen Bytes werden auch fleissig upgedated :)

Allerdings ist das für meine Fälle nicht das passende Tool :( denn ich benötige sowas in der Art von vnstat - ein Kommandozeilen-Tool, welches einfach nur den Traffic, der über eine zu spezifizierende Schnittstelle ein- und ausgeht, aufsummiert - und das nach Möglichkeit nach Stunden, Tagen und Monaten aufgeschlüsselt (da volumenabhängiger Tarif).

vnstat hat sich dabei als ideal erwiesen (s.a. Beispielausgabe unten) - von daher würde mich interessieren, was man tun muss, um so ein kleines Tool aus den Sourcen heraus auf der FB kompiliert bekommt? Gibt es dazu irgendwo Infos, die ich mir durchlesen kann?

Danke schonmal im voraus für jeden Hinweis (gerne auch per BM, da die Frage ja nix mehr mit dem eigentlichen Topic zu tun hat).

Gruß, Erik

Code:
Database updated: Wed Aug 13 19:05:01 2008

        eth1

           received:       2.14 GB (75.4%)
        transmitted:     715.82 MB (24.6%)
              total:       2.84 GB

                        rx     |     tx     |  total
        -----------------------+------------+-----------
        yesterday     32.76 MB |    7.26 MB |   40.02 MB
            today     44.08 MB |   10.52 MB |   54.60 MB
        -----------------------+------------+-----------
        estimated        55 MB |      12 MB |      67 MB

 eth1  /  monthly

   month         rx      |      tx      |   total
-------------------------+--------------+--------------------------------------
  Jun '08     199.10 MB  |    31.39 MB  |   230.49 MB   %%
  Jul '08       1.38 GB  |   468.75 MB  |     1.84 GB   %%%%%%%%%%%%%%%%%:::::
  Aug '08     578.19 MB  |   215.67 MB  |   793.86 MB   %%%%%%%::
-------------------------+--------------+--------------------------------------
 estimated      1.37 GB  |      521 MB  |     1.88 GB

 eth1  /  daily

    day         rx      |     tx      |  total
------------------------+-------------+----------------------------------------
   10.08.     18.68 MB  |    4.45 MB  |   23.13 MB   %%
   11.08.     29.07 MB  |    6.04 MB  |   35.12 MB   %%%:
   12.08.     32.76 MB  |    7.26 MB  |   40.02 MB   %%%:
   13.08.     44.08 MB  |   10.52 MB  |   54.60 MB   %%%%%:
------------------------+-------------+----------------------------------------
 estimated       55 MB  |      12 MB  |      67 MB
 eth1                                                                     19:05
  ^                                                     r
  |                                                     r
  |                                                     r
  |                                                     r
  |                                                     r
  |  r                                         r        r
  |  r                                         r        r     r        r
  |  r                                      r  r     r  r     r        r
  |  r                                      r  r     r  r     r  r     r
  |  r                                      rt rt r  r  rt    rt r  r  rt
 -+--------------------------------------------------------------------------->
  |  20 21 22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19
 
HW71: Hab's dir mal eben compiliert. Sag bescheid ob du's zum laufen kriegst! Ich habe das Datenbankverzeichnis in /var/tmp/vnstat geändert.
 

Anhänge

  • vnstat.bz2
    33.2 KB · Aufrufe: 15
Zuletzt bearbeitet:
Hi djtm,

HW71: Hab's dir mal eben compiliert.
:shock:
super - merci!... Werd's heute Abend gleich mal ausprobieren - aber Danke schonmal vorab für die Mühe und den "Compile-Service"! :)

Gruß, Erik
 
Hallo djtm,

ich hab das Programm jetzt mal auf meine FritzBox geschafft und anschließend das vnstat Verzeichnis in /var/tmp erzeugt.
In diesem Verzeichnis habe ich dann ein vnstat.conf file mit folgendem Inhalt erstellt (im Prinzip das standard config-file was auch mit den Sourcen mitgeliefert wird - bis auf die roten Änderungen):

Code:
# vnStat 1.6 config file
##

# location of the database directory
[COLOR="Red"]DatabaseDir "/var/tmp/vnstat"[/COLOR]

# locale (LC_ALL)
Locale "en_US"

# on which day should months change
MonthRotate 1

# date output formats for -d, -m, -t and -w
# see 'man date' for control codes
DayFormat    "%d.%m."
MonthFormat  "%b '%y"
TopFormat    "%d.%m.%y"

# characters used for visuals
RXCharacter       "%"
TXCharacter       ":"
RXHourCharacter   "r"
TXHourCharacter   "t"

# default interface
[COLOR="Red"]Interface "lan"[/COLOR]

# maximum bandwidth (Mbit) for all interfaces, 0 = disable feature
# (unless interface specific limit is given)
MaxBandwidth 100

# interface specific limits
#  example 8Mbit limit for eth0 (remove # to activate):
#MaxBWeth0 8

# how many seconds should sampling for -tr take by default
Sampletime 5

# default query mode
# 0 = normal, 1 = days, 2 = months, 3 = top10
# 4 = dumpdb, 5 = short, 6 = weeks, 7 = hours
QueryMode 0

# database file locking (1 = enabled, 0 = disabled)
UseFileLocking 1

# how much the boot time can variate between updates (seconds)
BootVariation 15

Wenn ich nun vnstat mit folgenden Parametern starte:

Code:
./vnstat --config /var/tmp/vnstat/vnstat.conf -u -i lan

erhalte ich folgende Fehlermeldung:

Code:
Error:
Not enough free diskspace available

Ich habe daraufhin mal in den Sourcen geschaut, wo und wie es zu diesem Fehler kommt. Zur Überprüfung des freien Speichers wird die Funktion spacecheck( ) im File src/misc.c benutzt. Dort wird sicherheitshalber mal auf mindestens auf 1MB freien Speicher im Dateisystem geprüft - siehe Kommentar im Code:

Code:
	/* the database is less than 3kB but let's require */
	/* 1MB to be on the safe side, anyway, the filesystem should */
	/* always have more free space than that */

Jo, 1MB sollten frei sein ... auf einem "normalen" Rechner - aber wie schaut's bei der FB aus?

Ich habe daraufhin mal vnstat mit dem Parameter --debug aufgerufen - nun ist vnstat etwas gesprächiger :D. Interessant dürfte wohl der rot markierte Teil sein:

Code:
# ./vnstat --debug --config /var/tmp/vnstat/vnstat.conf -u -i lan
Used config file: /var/tmp/vnstat/vnstat.conf
Config file: --config
  DatabaseDir "/var/tmp/vnstat"
   -> "DatabaseDir": "/var/tmp/vnstat"
...
ibw list is empty.
arg 1: "--debug"
arg 2: "--config"
arg 4: "-u"
Updating database...
arg 5: "-i"
Used interface: lan
Dir OK
1 file(s) found
[COLOR="Red"]bsize 4096
blocks 0
bfree 0
bavail 0
ffree 0
0 free space left
[/COLOR]Error:
Not enough free diskspace available.

Also mit "0 free space left" hätte ich dann doch nicht gerechnet :( - ist das eine Besonderheit von der FritzBox?

Ich habe vnstat ja auf unseren Laptops zur Überprüfung des übertragenen Datenvolumens laufen und ich kann bestätigen, dass das DAB-File gerade mal ~2300 Bytes "klein" ist - also wirklich minimalst... Das sollte doch noch auf die FB passen... ;)

Gruß, Erik
 
Hi,

hier ein neuer Thread für vnstat, ein weiteres Transferstatistikprogramm, das auf der FritzBox läuft.j

Die Datei ist gepatcht, um die Überprüfung des freien Speichers zu deaktivieren, denn sie meldet sonst immer 0kb frei. Außerdem wieder gestrippt, und upx gepackt, dann bz2 komprimiert. Ihr müsst nur das bz2 entpacken, dann könnt ihr es auf die Fritzbox spielen, ausführbar machen (chmod a+x vnstat-bin) und ausführen.

Das Datenbankverzeichnis wurde als /var/tmp/vnstat eingestellt: (mkdir /var/tmp/vnstat)

Ich habe sonst keine Ahnung wie das Programm genau läuft, ich nutze es nicht, aber ich bin sicher HW71 wird euch bei Fragen helfen.

Viel Spaß!
 

Anhänge

  • vnstat.bz2
    32.8 KB · Aufrufe: 33
habe einen neuen thread aufgemacht. ich werde die admins bitten alles über vnstat dahin zu verschieben. sonst wird das hier ein durcheinander... ach und dein problem dürfte in der datei dort gelöst sein. hab den doofen speichercheck einfach rausgenommen.
 
Zuletzt bearbeitet:
Hi djtm,

vielen Dank - werde es heute Abend gleich mal ausprobieren! :)

Gruß, Erik
 
Nur so ne Überlegung:
Google hat doch ein Interface namens googlecharts, oder? Warum nicht einfach nur statistikdaten einsammeln und bei aufruf einer FBF-Webseite das .png von Googlecharts einbauen. Dann liegt die Prozessorlast bei Google und nicht auf der Box... Das einsammeln der Daten könnte ein kleines Shell-Script doch sehr leicht erledigen... War mal in der ct beschrieben, wie der Aufruf bei google aussieht...
So könnte man auch auf das Paket rrdtools im Freetzmod verzichten!
 
Gute Idee. Wenn du an einer Stelle Hilfe brauchst sag bescheid.
Bin sehr beschäftigt grad, aber vielleciht kann ich ja schnell was zwischendurch machen.

Viel erfolg
 
Wie sollte man vnstats verwenden? wenn ich vnstat mit den angegebenen parametern starte erscheint er nur kurz.
sollte man da irgendwelche parameter zusätzlich angeben damit das programm immer läuft?

Also ich habs jetzt gestartet (übernimmt ein skript)
nur wenn ich versuche es aufzurufen erscheint


./vnstat --config ./vnstat.conf

rx / tx / total / estimated
Trying to convert database "/var/media/ftp/FlashDisk-Partition-0-1/vnstat/start.sh" (v1818847351) to current db format
Error:
Unable to convert database version "1818847351".
Error:
Unable to open backup database "/var/media/ftp/FlashDisk-Partition-0-1/vnstat/.start.sh".


Was möchte er mit einer Backupdatenbank? wie kann ich das umgehen ?!

hat sich erledigt -i lan fehlte als option



Hat jemand zufällig ne idee wie die Netzwerkinterfaces zugeordnet sind?
Wo is der Unterschied zwischen ath0 und wifi ?
 
Zuletzt bearbeitet:
vnstat 1.11
 

Anhänge

  • vnstat_1_11.patch.txt
    4.1 KB · Aufrufe: 14
Hi,

gibt es ein vnstat binary für eine Stock Firmware 74.05.22 oder 74.05.50?
Oder muss ich auf Freetz wechseln? Dann wird es aber wohl nur mit einem development snapshot gehen, oder?

cu
Walzing
 
Kannst es ja mal versuchen...
 

Anhänge

  • vnstat_binaries_mipsel.tgz
    356.2 KB · Aufrufe: 6
Der Aufruf:
./vnstat_mipsel_static --config /var/media/ftp/INTENSO-USB-01/vnstat.conf -u -i lan

bringt dann:
Error: Not enough free diskspace available.

Aber das wurde ja schon oben erwähnt. Sind die Files ohne den Patch?
Kann ich mir mit vnstat dann auch anzeigen lassen, über welchen Port wieviel Traffic gegangen ist? Weil mit dem vnstat kann ich anscheinend nicht die einzelnen Ports auswählen.
Mein Ziel war eigentlich einen besseren Überblick zu bekommen, wer hier im Haus so viel Traffic verursacht.

cu
Walzing
 
Ähh, warum sollte man einen Config-Parameter "herauspatchen"?
Wenn die Abfrage Probleme macht, setzt man den Parameter dafür auf "0" um es nicht auszuführen. So in dieser Art:
Code:
Interface "eth0"
DatabaseDir "/var/tmp/vnstat"
[B]CheckDiskSpace 0[/B]

Code:
root@Speedport:/var/tmp# ./vnstat_mipsel_static --config vnstat.conf  -u -i tiwlan0
root@Speedport:/var/tmp# ./vnstat_mipsel_static --config vnstat.conf  -u -i eth0
root@Speedport:/var/tmp# 
root@Speedport:/var/tmp# ./vnstat_mipsel_static --config vnstat.conf 

                      rx      /      tx      /     total    /   estimated
 tiwlan0:
       Apr '13         0 KiB  /       1 KiB  /       1 KiB  /       0 KiB
         today         0 KiB  /       1 KiB  /       1 KiB  /      --    

 eth0:
       Apr '13        61 KiB  /      14 KiB  /      75 KiB  /       0 KiB
         today        61 KiB  /      14 KiB  /      75 KiB  /      --    

root@Speedport:/var/tmp# 
root@Speedport:/var/tmp# ./vnstat_mipsel_static --config vnstat.conf -i eth0
Database updated: Fri Apr  5 16:33:05 2013

   eth0 since 04/05/13

          rx:  61 KiB      tx:  14 KiB      total:  75 KiB

   monthly
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
       Apr '13        61 KiB |      14 KiB |      75 KiB |    0.00 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |

   daily
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
         today        61 KiB |      14 KiB |      75 KiB |    0.01 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |
root@Speedport:/var/tmp# ./vnstat_mipsel_static --config vnstat.conf -i tiwlan0
Database updated: Fri Apr  5 16:34:40 2013

   tiwlan0 since 04/05/13

          rx:  0 KiB      tx:  1 KiB      total:  1 KiB

   monthly
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
       Apr '13         0 KiB |       1 KiB |       1 KiB |    0.00 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |

   daily
                     rx      |     tx      |    total    |   avg. rate
     ------------------------+-------------+-------------+---------------
         today         0 KiB |       1 KiB |       1 KiB |    0.00 kbit/s
     ------------------------+-------------+-------------+---------------
     estimated        --     |      --     |      --     |
root@Speedport:/var/tmp#
 
Genial - jetzt geht es. Aber ich kann anscheinend nicht jeden Port einzeln abfragen (Lan 1-4) oder z.B. auf IP Basis.
Das liegt aber wohl nicht am vnstat.
cu
Walzing
 
Das liegt daran, dass die Box die LAN-Ports nicht als eigene Interfaces kennt, weil alle als Switch zusammengeschaltet sind..
 
Hi,

ja - habe ich gesehen. Mit cpmaccfg (freetz) könnte man da wohl was machen. Aber dann brauch ich wieder freetz und da gibt es für aktuelle Firmwares ja noch keine stable.
Alternative wäre vielleicht was mit iptables? Aber das ist hier wohl OT. Mach ich mal nen extra Thread.

cu
Walzing
 
Du kannst es ja mal mit "iptraf" versuchen (benötigt ncurses/terminfo, was mit im Anhang ist).
Code:
# seien iptraf und terminfo.tgz in /var/tmp
#
# falls die box kein tgz entpacken kann (kein "tar x"), vorher in terminfo.tar entpacken
# und dann tar xf terminfo.tar

cd /var/tmp
tar xzf terminfo.tgz
export TERMINFO=/var/tmp/terminfo

mkdir /var/log/iptraf
mkdir /var/run/iptraf

./iptraf
 

Anhänge

  • iptraf.tgz
    200.4 KB · Aufrufe: 1
Auch nicht schlecht - aber ist nur Real Time oder?
Ich habe hier im Forum darkstat gefunden. Weiss nur noch nicht ob ich das so zum laufen bekomme.

cu
Walzing
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,080
Beiträge
2,245,703
Mitglieder
373,529
Neuestes Mitglied
der_wolle
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.