MRTG-Alternative? (Daten sammeln + anzeigen mit rrdtool und collectd)

Ist das jetzt 'ne Ready-4-FB-Testing-rrdtool-Version oder ist das 'n spezieller Download für Heimi / Trick? :)
 
Hinweis von kriegaex: Drei Beiträge zusammengefügt. Foren-Konvention ist es, nicht mehrere direkt aufeinander folgende Beiträge zu schreiben, sondern den vorigen Beitrag zu editieren, wenn er immer noch der letzte im Thema ist.

... Zeitverschwendung ist nur, einem faulen Assembler-Freak wie mir, der in der Entwicklung :alt: beim %include stehen geblieben ist, Nachhilfe zu geben. Wobei ich Deine Nachhilfe einem 'man make' bei Weitem vorziehe; macht echt Spass bei Euch. Vielen Dank für Dein Engagement! Trick

PS: Bei allem Palaver noch etwas 'on topic'. Dein Patch funktioniert bei mir nur, wenn ich bei den Patches zu den libs dein neues diff-File "100-cross_compile_fix.libart.patch" deaktiviere (das p-level Problem ist dabei nicht die Ursache, so was behebt sich) und den Patch von derheimi verwende. Vorerst compiliert mein PII ohne Probleme.


xDank der kompetenten Unterstützung kommt Schwung ins Ganze. Mit dem Brechhammer (--disable-shared) ist das letzte Aufbegehren von libpng erschlagen (irgend so 'n zwielichtiges malloc Problem).

Ausgerutscht bin ich aber dann auf dem Glatteis von rdtool:
Code:
.../target/bin/mipsel-linux-uclibc-strip --remove-section=.comment --remove-section=.note packages/rrdtool-1.2.23/root/usr/bin/rrdtool
.../target/bin/mipsel-linux-uclibc-strip: packages/rrdtool-1.2.23/root/usr/bin/rrdtool: File format not recognized
make: *** [packages/rrdtool-1.2.23/root/usr/bin/rrdtool] Error 1
Im Gegensatz zu anderen Packages ist das besagte File kein binary sondern ein Wrapper-Skript (#! /bin/sh).

Irrlichter und falsche Verdächtige entfernt.

xRrdtool stösst auf dieses Problem und generiert gar nicht erst seine libs oder die binaries. Beim zweiten Kompilationsdurchgang wird dieser Fehler maskiert und taucht dann erst zur runtime wieder auf, wenn statt eines binary das 'alte' Wrapperscript (siehe Attachment) noch rumgeistert.
Code:
/var/mod/root $ rrdtool -v
mkdir: cannot create directory '/usr/bin/.libs': Read-only file system
/usr/bin/rrdtool: cd: line 1: can't cd to /home/FbF/ds26-15.1/source/rrdtool-1.2.23/src
/usr/bin/rrdtool: eval: line 1: mipsel-linux-gcc: not found
Wenn ich rrdtool mit 'disable-shared' compiliere verschwindet der Fehler. Stattdessen tritt der runtime Fehler auf, dass libpng12.so nicht gefunden wurde. Weshalb libpng sich sowohl als libpng.so wie auch teilweise mit libpng12.so einträgt (aber eben leider mit falschen Links) bleibt schleierhaft. Trick
 

Anhänge

  • CGI.zip
    2 KB · Aufrufe: 11
  • rrdtool_v08.diff.gz
    6 KB · Aufrufe: 4
  • rrdtool.dos.txt
    4.8 KB · Aufrufe: 13
  • rrdtool_v09.diff.gz
    5.8 KB · Aufrufe: 6
Zuletzt bearbeitet:
Huhu.. :)

Geht die Entwicklung weiter gut voran? - Verzeih meine ungebremste Ungeduldigkeit, aber ich bin 'n kleiner Statistik-Freak undfreu mich wie 'n 12-jähriger drauf, im DSMod-Addon-Ordner 'nen Ordner "rrdtool" zu haben, um dann auf der Web-Oberfläche der Box schne Grafen zu sehen.. :D


Beste Grüße,
Martin.. :)
 
@Trick
Wir sind ja hier im dsmod-Unterforum. Daher wäre es interessant diese stats.cgi so einzubinden, dass man sie vom dsmod-Webinterface aufrufen kann. Schau dir doch mal die anderen Packages an. Vielleicht lässt sich sowas machen. Also eine Seite auf der man das Konfigurieren kann (Automatischer vs. manueller Start) und dann ein Link auf die Graphen.

MfG Oliver
 
Hab noch den runtime Fehler bei libpng
Code:
/var/mod/root $ rrdtool
rrdtool: can't load library 'libpng12.so.0'
der auf ungültige Links von libpng12.so.* und libpng.so.* Files zurückgeht, im Visier. Ich habe die libpng.mk mehrfach angepasst, aber noch keine Lösung gefunden. Jetzt rattert gerade eine statische Compilation. Erst wenn rddtool resp. rrdcgi läuft und collectd manuell gestartet wurde, funktioniert das stats.cgi.

Die Idee für ein cgi für die Verwaltung (start/stop/restart) nehme ich gerne schon mal auf. Dann wäre ich auch gleich die manuelle Behandlung des collectd.conf los.

Gruss Trick
 
Hallo Trick,

welche der Versionen von Dir ist im ds-mod26-15.2 drin?
Wenn ich die dort mit reinnehme läuft das make zwar durch, aber nach dem Flashen finde ich weder collectd noch rrdtool.

Hoffentlich geht's gut voran!

Grüße,

Nighty
 
Für collectd und rrdtool gibt es (noch) keine Webseiten im dsmod. Da müsste sich noch jemand drum kümmern.

MfG Oliver
 
Ja,
dachte ich mir, ich finde aber auch im Dateisystem nirgends was passendes.
Unter /var/mod/pkg liegen Verzeichnisse, aber da ist nichts drin, mit dem ich was anfangen könnte...
Danke aber schonmal!
Grüße,
Nighty

Edit: ah, unter /var/mod/pkg/usr/bin liegt die collectd, beim start sucht er /etc/collectd.conf
Mal sehen, ob er da was nimmt...
 
Code:
fopen (/etc/collectd.conf) failed: No such file or directory
Error: Reading the config file failed!
Read the syslog for details.
/var/mod/etc/conf $ collectd /var/mod/etc/conf/collectd.conf
fopen (/etc/collectd.conf) failed: No such file or directory
Error: Reading the config file failed!
Read the syslog for details.

Auch, wenn ich ihm eine conf erstelle sucht er in /etc
Muss ich collectd anderes starten, um den Pfad der Conf mit zu übergeben?
 
Kommst Du ab und zu mal auf die Idee, eine Doku zu lesen oder zu versuchen, ein Programm mit sowas wie "-?" oder "--help" aufzurufen?
Code:
$ collectd -?
/tmp/collectd: illegal option -- ?
Usage: collectd [OPTIONS]

Available options:
  General:
    -C <file>       Configuration file.
                    Default: /etc/collectd.conf
    -P <file>       PID-file.
                    Default: /var/run/collectd.pid
    -f              Don't fork to the background.

Builtin defaults:
  Config-File       /etc/collectd.conf
  PID-File          /var/run/collectd.pid
  Data-Directory    /var/lib/collectd

collectd 4.0.5, http://collectd.org/
by Florian octo Forster <[email protected]>
for contributions see `AUTHORS'
 
Hallöchen allerseits,

ich kümmere mich gerade schwerpunktmässig um den Fortbestand der Menschheit. Der Geburtstermin ist aber in erst in 3 Wochen, so dass ich noch nicht die langen schlaflosen Nächte für den Update einsetzen kann und überaus beschäftigt bin. Mann bittet um Gelduld und Nachsicht.

Dennoch: Der Pfad zum config File muss per -C gegeben werden. Beim Spielen hab ich's jeweilen im ramfs deponiert, um die armen Flashzellen zu schonen. Das default File ist ganz OK, nur braucht's ein paar uncomments, damit überhaupt was in die Datenbank geht. Mir genügt im Moment
Code:
LoadPlugin cpu
LoadPlugin load
LoadPlugin memory
LoadPlugin ping
LoadPlugin processes
#LoadPlugin traffic
Wer natürlich die netten Verkehrs-Grafiken will, muss auch die letzte Zeile aktivieren. Damit der Schrott vom loop- und den anderen "halbvirtuellen" Interfaces nicht alles dichtmacht, kommt noch eine kleine Konfig dazu
Code:
<Plugin traffic>
   Interface eth0 dsl
   IgnoreSelected false
</Plugin>
Und das war es dann schon. Collectd ist da wirklich genügsam. Die Darstellung erfolgt entweder per cgi/rrdcgi (ich hab das Skelett gepostet) oder cgi/rrdtool graph. Obwohl ich den Entwurf mit rrdcgi gemacht habe, werde ich davon abkommen, weil das starre rrdcgi sich standhaft weigert, sich artig in die Web-Basis vom ds-mod einzufügen.

Aber all das ist für die Ungeduldigen. In ein paar Wochen hab ich die CGI-Skripte und die Patches drin. Wenn denn alles rund läuft.

Cheers Trick
 
Dann Alles Gute erstmal für die nächsten Wochen!

Ah, unter Windows sind die Parameter eigentlich immer egal hinsichtlich groß/klein, mit großem C geht's!


Ich starte wie folgt:
collectd -c /var/mod/pkg/collectd/tmp/collectd.conf

Die collectd.conf sieht so aus:
Mode Client
Server 192.168.39.151 25826
DataDir "/var/mod/pkg/collectd/lib"
PIDFile "/var/mod/pkg/collectd/var/run/collectd.pid"
PluginDir "/var/mod/pkg/collectd/lib"
LoadPlugin cpu


Ich bekomme dann den Fehler:
Error: Unable to change to directory `/var/lib/collectd'


Irgendwas überseh ich da wohl!?
 
Den Fehler hatte ich nur, wenn ich keinen Pfad für die Datenbank ("DataDir" im config File) angab. Defaultmässig landet alles im /var/lib/collectd. meine schnelle Lösung war ein mkdir /var/lib/collectd und das Gemotze hatte ein End. trick
 
Ja,

das klappt! Aber wieso akzeptiert er meine Pfadangabe in der Config nicht?
Ich krieg das mit den Angaben per collectd.conf nicht in einen anderen Pfad..
Aber Danke für den Trick, der Name scheint Programm ;)

Die nächste Hürde ist nun die Auswertung, da wirft er momentan:
rrdtool: can't load library 'libart_lgpl_2.so.2'
Mal nachlesen, was das sein kann.

Grüße,
Nighty
 
Die Library libart fehlt. Hast du rrdtool im dsmod ausgewählt oder per Hand auf die Box kopiert? Normalerweise sollte die Lib dann mitkopiert werden. Testweise kannst du sie nach /mod/lib kopieren.

MfG Oliver
 
Ja,

dachte mir schon, dass ich die nachkopieren muss, und zwar die beiden hier:
libart_lgpl_2.so.2
libpng12.so.0

Hatte rrdtool und collectd in ds26-15.2 aktiviert, die scheinen dort also zu fehlen, das müsste für Alexander interessant sein.

Damit lässt sich rrdtool fehlerfrei aufrufen, jetzt muss ich es nur noch zur Erstellung bewegen ;)

Grüße,
Marco
 
Hallo Marco,

ich überprüfe heute Abend mal das Config.in, ob die notwendigen libs vergessen gegangen sind.
Hab schnell in der Pause nachgeschaut: Beim RRDTool sind alle libs dabei. Beim collectd sind keine dabei. Das find ich ganz OK, da bei einer client/server Installation collectd auf der Fritz!Box wirklich nichts braucht. Die ganzen Daten liegen auf einem anderen Rechner (ergo mit rrdlib), der aus den übertragenen Messdaten die rrds generiert.

Als Prophylaxe, wenn dein Spieltrieb dich übermannt, kann das beigefügte Skript viel Frust sparen. Ich verwende es als Gerüst für alle Messungen, die collectd nicht selbst macht und wo ich zu faul bin, ein Plugin in C zu schreiben. Konkret bereite ich die Skripts (mit cron job) für die S/N-ratio (nur total, nicht pro 'subcarrier'), die Verbindungsraten up/down, sowie den ATM-Raten (um suboptimale MTU-sizes und suboptimale RTP-Paketgrössen aufzuspüren). Woran ich noch hirne, ist, wie viel Freiheit am Schluss im Web-Menu noch sein soll. Meine Idee geht dahin, alle halbwegs nachvollziehbaren Messungen vorzubereiten (Skripte, rrd Initialisierung) und im Web-GUI nur noch Checkboxen zu haben. Zeitintervalle und welche Art Daten (min, max, average, 95-percentile) wären dann vorgegeben, so dass wir mit dem Speicher (ramfs) haushälterisch umgehen, auch wenn jemand alle Optionen anwählt.

Denkst du, es bräuchte mehr Freiheit in der Konfig?

Gruss trick

PS: "Trick" hat einen etwas traurigeren Ursprung, den Alexander ("nicht Alex") sicher nachvollziehen kann. Als Patrick wehrte ich mich in meiner Forscherzeit in den USA gegen das Abschneiden der Endung auf "Pat". Und so würde ich geköpft und zu "Trick".
 

Anhänge

  • memory.sh.txt
    539 Bytes · Aufrufe: 15
Zuletzt bearbeitet:
Vielleicht bin ich zu blöd, aber wenn ich den Anhang runterladen will, erscheint die Login-Box des Forums (obwohl ich längst eingeloggt bin) und trotz Eingabe meiner Daten erscheint die Box wieder und wieder und.. :(
 
<OT>Hatte das Problem, als ich bei den Cookies die Einstellungen verschärft hatte. Jetzt erlaube ich persistente Cookies von *.ip-phone-forum.de und die Welt ist wieder eine Scheibe wie zu den guten alten Zeiten.

Nee, stimmt nicht: Hab seit einer Stunde ein ähnliches Problem. Aber nach der Eingabe geht's bei mir weiter. Trick</OT>
 
Zuletzt bearbeitet:
Hi,
wenn ich mal auf die Frage "wieviel Freiheit man geben soll" anworten darf:
Ich hatte mal ein RRDTOOL-OPT für fli4l gebaut und auch versucht viel Freiheit zu lassen. Das ist mir etwas auf die Nase gefallen, nämlich wenn man bestimmte Einstellungen ändern tut, passen u.u. die alten RRD Datenbanken nicht mehr zu den neuen Einstellungen.
Gruß
Markus
 
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.