[Freifunk Franken] Nodewatcher

Martin m.rottmann at gmx.de
Do Jan 31 23:25:49 CET 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 27.01.2013 16:20, delphiN wrote:
> Am 27.01.2013 13:56, schrieb Christian Berger:
>> Das nennt sich cross-compilieren. Das geht, da hab ich keine 
>> Erfahrung damit. Dafr braucht man aber genau das gleiche Setup
>> wie zum Erstellen von Firmwares. Sprich, wer eine Firmware bauen
>> kann, kann auch das machen.
> 
> Sprich wer keine Firmware bauen kann kann auch das nicht :-(

also der openWRT cross-compiler ist wirklich einfach zu installieren.
hab ich auch schon gemacht.

> 
>> Ich hab mir da mal ein paar Gedanken gemacht.
> 
>> Der Nodewatcher holt sich ja aus verschiedenen Quellen 
>> verschiedene Daten. Diese werden alle in ein XML-artiges Format 
>> umgewandelt.
> 
> Als erstes wrde ich mal von XML weg gehn - das sind ja schlie￟lich
>  nicht mehr die 90er Jahre :-) JSON ist deutlich leichtgewichtiger
> und k￶nnen ganz ohne parsen direkt in Web-Applikationen angebunden
> werden. Um auch bestehende Apps zu untersttzen k￶nnte man ja
> erstmal beides parallel untersttzen und einen Parameter definieren
> einfhren, der das Ausgabeformat definiert.
> 
>> Ich vermute, dass da das Problem ist, dass das Shellskript das 
>> relativ unoptimiert macht. Die Menge des freien Speichers wird 
>> beispielsweise so bestimmt: memory_free=`cat /proc/meminfo |
>> grep 'MemFree' | awk '{ print $2 }'` Da werden 4 Prozesse
>> gestartet nur um eine Zahl zu bekommen. An anderen Stellen
>> scheint es noch schlimmer zu sein.
> 
> Ich denke auch, das hier die gr￶￟ten Probleme liegen. Man sollte
> sicherlich die Dateien nur einmal ￶ffnen und dann direkt in C alle
> ben￶tigten Werte heraus-parsen statt dieser Kette von Aufrufen 
> durchzufhren.
> 
> Auch das Auslesen der Interfacedaten (Zeile 122-152 im Skript)
> k￶nnte sicherlich durch ein eigenes Mini-Tool erfolgen.
> 
> Auch gibt es hier und da un￶tige Aufrufe, die man sicherlich 
> auskommentieren k￶nnte.
> 
> Detailierte Router-Infos wie z.B. "Kernelversion", "Idletime" oder 
> "Memory" sind fr die normale Netmonitor Anwendung eigentlich gar 
> nicht so wichtig. Hier wrde es evtl. reichen diese sehr
> speziellen Daten nur noch alle 30-60 Minuten auszulesen und
> vielleicht sogar in eine eigene Datei zu schreiben. Denkbar ist
> sogar, das man die Daten tats¦chlich erst auslie￟t, wenn sie von
> irgend-einem Client auch angefordert werden.
> 
>> Zur Originatorliste wrde ich vorschlagen, einfach batctl so 
>> umzubauen, dass es die Daten auch gleich im richtigen Format 
>> bergibt. So muss man das nicht umst¦ndlich parsen. Da batctl
>> und nodewatcher ja doch gemeinsam verwendet werden, w¦re eine 
>> zus¦tzliche Option "Ausgabe in XML" sicherlich sinnvoll. Das
>> wrde die Gesamtmenge an Code reduzieren, und jeder h¦tte was
>> davon.
> 
> Auch hier hast du sicherlich Recht. Auch hier k￶nnte man etwas 
> einsparen. Ich bin mir aber nicht sicher, ob die B.A.T.M.A.N. 
> Entwickler fr solche Monitoring-Aufgaben Ihr Tool aufblasen
> wollen. Wir k￶nnen uns das ja mal anschauen: 
> http://downloads.open-mesh.org/batman/stable/sources/batctl/
> 
>> Am Ende h¦tte man dann noch ein kompaktes Shellskript welches 
>> wenige kleine Programme (vielleicht 2-5) aufruft und ihre
>> Ausgabe in die Datei schreibt. Dieses k￶nnte dann auch von
>> anderen Communities auf ihre Zwecke angepasst werden. Die haben
>> dann vielleicht kein Batman sondern olsr, und rufen dann halt
>> nicht batctl sondern was anderes auf.
> 
> Gute Idee. Die Daten kommen als verschiedensten Quellen und es
> macht sicherlich nicht viel Sinn dafr auch noch ein eigenes Tool
> zu schreiben. Das nodewatcher Skript w¦re dann aber deutlich 
> leichtgewichtiger!
> 
> Mich wrde brigens noch interessieren, welcher HTTP-Server
> eigentlich die erstelle Datei ausliefert. Im Skript steht nur
> "small local httpd".
> 
> delphiN
> 
> 
> _______________________________________________ franken mailing
> list franken at freifunk.net 
> http://lists.freifunk.net/mailman/listinfo/franken-freifunk.net
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJRCu9sAAoJEEfCeEDRa3GeuwgH/j9xRz0MPNz+aK2od2UeRI/S
5ufw8YjD5U2EBcI6L1nQiIO9OutuYBFXiZ4C8dglLHhRCAzbIrTgJNb2oZVXNbI9
Dlbaq32fKNvPwwakA6F2Y0rUrG8Raj4ZzI0jt8mVM4W2Crvc+CeUNfAHlFXqFo4T
JM8b5+d3rb37aareEKjm+syift8QSAqAn2rUUmgn7fuBFTHsOnoPRY3tK0LfEX0U
1X5z5mTc3s8MqrNb4DCWRNE/qivSUX7iaZ+gcv8f3OV3rDX+GZjT7M7awduOW+na
N3vhjSPsJSQw9XLYm2dsz67E3EfSitt0KtJ1VPqUvHUYig7upPoTqR2TXds0WkM=
=Vkbk
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste franken