Monitoring

__TOC__
Die Monitoring-Map zeigt alle Knoten im Bereich von Freifunk Franken und ihre Verbindungen untereinander.
: → zur Monitoring-Map → zur Hilfeseite über die Monitoringseite eines Knotens → zur Hilfeseite über die Monitoring-Datenbank
== Map ==
Derzeit findet eine Umstellung der Firmware statt von Version 1 zu Version 2.
 Alte Router (V1) und bereits umgestellte Router (V2) werden farblich unterschieden:
{|class="wikitable"	Knoten	Knoten	Knoten 	Knoten
  	Uplink	Mesh 	 	
V1 	 	 	online 	
V1 	 	 	offline 	
V2Local	 	 	online 	
V2Local	 	 	offline 	
alle 	 	 	länger als zehn Tage offline	
alle 	 	 	unbekannt 	
V1 und V2 bezieht sich auf Router der jeweiligen KeyXchange-Version. Dezentrale Hoods werden separat dargestellt, benutzen aber den Farbcode von V2.
Knoten mit weißem Zentrum im Marker sind Uplink-Router, Knoten mit schwarzem Zentrum sind reine Mesh-Router. Knoten, die länger als zehn Tage offline sind, werden grau angezeigt und nach 180 Tagen abgeschaltet.
Gateways haben per Definition keinen Uplink und erscheinen mit schwarzem Punkt.
== Bedienung ==
; Zoom
: Mit dem Mausrad oder oben links mit "+" und "-" kann man rein- und rauszoomen.
; Layer
: Oben rechts können über das kleine Symbol die Layer ausgewählt werden:
:* Router V1
:* Router V2
:* Router local ("dezentral")
:* Hood V2 Grenzen
:* Poly-Hood Grenzen
:* Wird "Position-Popup" aktiviert, wird die Koordinate des Mauszeigers angezeigt, sobald man in einen leeren Bereich der Karte klickt. Kann in Zwischenablage kopiert werden.
; Maßstab
: Unten links ist ein Maßstab, mit dem man Entfernungen schätzen kann.
Die Karte stammt von OpenStreetMap, der Knoten-Layer von Freifunk-Franken.
== Popup ==
Mit einem Klick auf einen roten, grünen oder grauen Knoten-Punkt der Monitoring-Karte wird in einem Popup-Fenster der Knotenname angezeigt, und darunter mit dem Knoten verbundene weitere Knoten und die Verbindungsqualität. Gut funktionierende Verbindungen werden grün, schlecht funktionierende rot angezeigt. Blaue Felder sind Layer-3 Verbindungen.
Parameter	Bedeutung 	
Router 	Name des angezeigten Knotens Link zum Monitoring des angezeigten Knotens 	
Link 	Name des verbundenen Nachbar-Knotens Link zum Monitoring des verbundenen Nachbar-Knotens 	
Quality 	Qualität der Verbindung (1 = schlecht, 255 = gut) die Qualität wird auch in verschiednenen Stufen der Ampelfarben angezeigt für Babel wurde eine blaue Farbe eingeführt.	
Interface	eth0.3 	Der Nachbar ist per Kabel über die VLAN ID 3 verbunden
w2mesh 	Der Nachbar ist über das WLAN Netzwerk w2mesh verbunden. 	
== Monitoring eines Knotens ==
Mit einem Klick auf einen Knotennamen im Popup-Fenster öffnet sich die "Monitoringseite des Knotens". Sie bietet detaillierte Informationen über den aktuellen Status.
: → zur Hilfeseite über die Monitoringseite eines Knotens 
----
== Bestimmung der Hood im Monitoring ==
Prinzipiell sind zwei Fälle zu unterschieden:
1. Der Router übermittelt eine Hood. In diesem Fall wird die Hood vom Monitoring ohne weitere Prüfung übernommen.
2. Der Router liefert KEINE Hood. Das Monitoring berechnet die Hood selbst aus den Koordinaten. In ungünstigen Fällen kann diese Anzeige fehlerhaft sein z.B.:
* ein Meshrouter steht in einer anderen Hood als der Uplinkrouter dazu, dies ist möglich solang am Meshrouter kein Uplinkrouter aus der Hood wo er steht dran mesht. Der Meshrouter ist aber tatsächlich in der Hood des jeweiligen Uplinks.
* Sind keine Koordinaten gesetzt und der Router hat Uplink kommt er in die Default-Hood.
* Sind keine Koordinaten gesetzt und der Router hat keinen Uplink wird er in die Hood NoCoordinates einsortiert, obwohl er eigentlich in der Hood des Uplink-Routers ist.
Blaue Linien zeigen Layer-3 Verbindungen an, sie verbinden somit Hoods untereinander.
== Eigene Daten mit an das Monitoring schicken ==
=== Andere Hood ===
uci set "system.@system[0].hood=meinehood"
uci commit system
=== Blaue Linien zeichnen ===
Bitte diesen Teil überprüfen, ob noch aktuell
https://github.com/FreifunkFranken/firmware/blob/master/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
Nach dem Blöcken mit "DATA=$DATA..." (ca. Zeile 296) muss folgendes mitgeschickt werden:
 BABELS=$(echo dump | nc ::1 33123 | awk '/^add neighbour/ {print "<neighbour><ip>"$5"</ip><outgoing_interface>"$7"</outgoing_interface></neighbour>"}')
 DATA=$DATA"<babel_neighbours>$BABELS</babel_neighbours>" 
Achtung: geht erst ab Babel 1.8 und nur, wenn in Babel die Option 'local-port 33123' aktiviert ist (Entweder in /etc/config/babeld (lede) oder /etc/babeld.conf (Debian) ).
Das Standard netcat unter Debian 9 kann kein IPv6, es muss netcat-openbsd installiert sein. Bei diesem ist für korrekte Funktion noch die Option '-N' notwendig.
Andernfalls können die Babel-Nachbarn auch so mitgeschickt werden:
DATA=$DATA"<babel_neighbours>" 
DATA=$DATA"<neighbour><ip>fe80::6666:b3ff:fede:f5cd</ip><outgoing_interface>eth0.4</outgoing_interface></neighbour>"
DATA=$DATA"</babel_neighbours>"
bzw. automatisch generiert kann sie z.b. so werden (Syntax ist so richtig und funktioniert so, wenn auch unschön):
DATA=$DATA"<babel_neighbours>" 
 
numhops=`traceroute 10.50.130.1 2>/dev/null | tail -1 | cut -d' ' -f2` 
if [ "$numhops" = "1" ]; then 
 DATA=$DATA"<neighbour><ip>fe80::6666:b3ff:fede:f5cd</ip><outgoing_interface>eth0.4</outgoing_interface></neighbour>" 
fi 
 
DATA=$DATA"</babel_neighbours>"
Weiterhin existiert eine Variante, die die Link-Kosten mit einschließt und ähnlich der Nachbar-Verbindungsqualität im Monitoring als History anzeigt (so implementiert in Adrians GW-Firmware):
BABELS="$(echo dump | nc ::1 33123 | grep '^add neighbour' |
 awk -v RS='\n' \
 '{r = gensub(/.*add neighbour.*address ([0-9a-fA-F:]*) +if +([^ ]+).* cost +([0-9.]+).*/, \
 "<neighbour><ip>\\1</ip><outgoing_interface>\\2</outgoing_interface><link_cost>\\3</link_cost></neighbour>", "g"); print r;}')"
DATA=$DATA"<babel_neighbours>$BABELS</babel_neighbours>"
== Debug ==
* https://monitoring.freifunk-franken.de:2367/munin
* https://monitoring.freifunk-franken.de:2367/debug.php
Kategorie:Dienste