Fehlersuche in meshviewer

Ich habe mir https://github.com/freifunk/meshviewer.git aufgesetzt und https://github.com/FreifunkBremen/yanic.git
Wenn ich in public/config den dataPath auf den yanic von ffffm nehme (https://yanic.batman15.ffffm.net/) läuft der meshviewer.
Setze ich dataPath auf den Webserver meines eigenen yanic bekomme ich aber nur ein „Network Error - Try to reload“ und weiss nicht weshalb, weil ich mit einem Browser z.B. meshviewer.json oder nodelist.json sehen kann.
Wie kann ich dem Fehler auf die Schliche kommen, bzw. wie kann ich das debuggen? Oder hat jemand vielleicht einen Tipp?

Nachdem ich den dataPath nicht auf den yanic-eigenen Webserver zeigen ließ sondern auf einen anderen, läuft es wie erwartet.

Hi @misanthropos ,
das klingt spontan nach einem Cross-Origin Resource Sharing (CORS) issue, weil der yanic eigene Webserver keine Anfragen von anderen servern annimmt..?

Das kannst du in den Developer-Tools (F12) ganz gut sehen. Der request der meshviewer.json sollte dort sichtbar fehlgeschlagen sein.

Einen Workaround hast du scheinbar ja schon :slight_smile:

Viele Grüße
Florian

Hi @fmaurer,

der yanic-webserver nahm schon requests an und antwortete auch. Wo genau der Fehler liegt, weiss ich noch nicht. Nur: mit einem mini-httpd funktioniert es auch nicht.
Mit einem lighttpd aber.
F12 hatte ich in Firefox selbstverständlich probiert - sehen konnte ich da allerdings nichts, was mir weitergeholfen hätte; mag aber nicht viel heissen, weil ich das nicht so oft benutzt hatte.

Nächster Schritt: Grafana.

Dann kann ich schon bald meinen eigenen Freifunk, der gepimpte Oldies unterstützt, auch publik machen :hugs:

Grüße

Misan

Bei Freifunk Rhein-Sieg läuft der Mapserver auf einer dedizierten VM.
Per cronjob werden die json von den supernodes und deren yanic eingesammelt in lokale Datenverzeichnisse. Danach folgt eine Validierung, einige Patches (z.B. Anzahl der LAN-Clients bei ER-X VPN-Mesh auf Null setzen, weil die Clients von nachgeordneten Unify mit Stockfirmware über eigene jsons reinkommen und sonst doppelt gezählt würde) und erst dann wird ins eigentliche datadir umkopiert.
Der Meshviewer reagiert allergisch auf json-Fehler - solange keine validen neuen files da sind, werden die alten genommen.

Das Ansible Setupt dafür findet sich unter Mapserver Collector

1 „Gefällt mir“