Monitoring Router

"e8:94:f6:2a:d3:50": {
    "processes": {
      "total": 58,
      "running": 2
    },
    "gateway": "04:be:ef:ca:fe:02",
    "idletime": 406425.33000000002,
    "traffic": {
      "tx": {
        "packets": 1639412,
        "bytes": 144560229,
        "dropped": 3014
      },
      "mgmt_tx": {
        "bytes": 1045065019,
        "packets": 9136749
      },
      "rx": {
        "bytes": 3907469037,
        "packets": 8467404
      },
      "mgmt_rx": {
        "bytes": 1732203849,
        "packets": 15924709
      },
      "forward": {
        "bytes": 841783,
        "packets": 6979
      }
    },
    "uptime": 485233.56,
    "memory": {
      "free": 2412,
      "cached": 6872,
      "total": 29212,
      "buffers": 1928
    },
    "node_id": "e894f62ad350",
    "loadavg": 0.40000000000000002
  }

Das sind die Statistic Daten einer Node (Datentyp 159 in Alfred), also da ist alles drin was man braucht und wird direkt übers Mesh übertragen.

Zusätzlich gibt es noch den Datentyp 158 da sind feste Daten drin:

"e8:94:f6:2a:d3:50": {
  "location": {
    "longitude": 6.7862900000000002,
    "latitude": 51.162750000000003
  },
  "network": {
    "mac": "e8:94:f6:2a:d3:50",
    "addresses": [
      "2a02:f98:0:28:ea94:f6ff:fe2a:d350",
      "fda0:747e:ab29:cafe:ea94:f6ff:fe2a:d350",
      "fe80::ea94:f6ff:fe2a:d350"
    ],
    "mesh_interfaces": [
      "ea:94:f6:2a:d3:50",
      "ea:94:f6:2b:d3:50"
    ]
  },
  "node_id": "e894f62ad350",
  "hostname": "NE-rheinfaehrstrasse",
  "hardware": {
    "model": "TP-Link TL-WR841N/ND v9"
  },
  "owner": {
    "contact": "XXXXX"
  },
  "software": {
    "fastd": {
      "version": "v14",
      "enabled": true
    },
    "autoupdater": {
      "enabled": true,
      "branch": "stable"
    },
    "firmware": {
      "base": "gluon-v2014.3",
      "release": "2014.3-stable-1"
    },
    "batman-adv": {
      "version": "2013.4.0"
    }
  }
}

Hoffe das hilft dir ein wenig

1 Like

Wieviele Clients, wielviele Nachbarn, und die Events, wann der Node online, offline geht, rebootet, etc. würden mich auch interessieren. Gibt es dafür auch einen Datentyp?

Clients, Nachbarn usw werden direkt aus den Batman-Vis Daten gelesen, also Live vom Mesh abgefragt.
Wann die Nodes Online/Offline sind wird von der Map geprüft (Vergleich ob die Daten noch im Mesh vorhanden sind im vergleich zur letzten Ausführungszeit) Es kann auch keine Datentyp dafür geben :slight_smile: Alle Alfred Daten sind nur 10 Minuten gültig und müssen neu geschrieben werden damit diese Aktiv bleiben, quasi eine Time to live für jeden Eintrag.

1 Like

Gibt es dazu Zahlen?
Wenn ich sehe was der Batman allein schon für Grundlast macht (mindestens 4kBit/s bei 200 Nodes?), dann kann das mi tdem Netmon doch gar nicht so schlimm sein.

1 Like

d.h. solche Events wie „wurde rebootet“, „wurde upgegradet auf FW xy“, etc. werden anhand der Historie ermittelt (neue FW-Version festgestellt, uptime zurückgesetzt…)? eigentlich schlau :wink:
Wenn ein Node länger nicht online ist, merkt sich das dann trotzdem den letzten Zustand des Nodes?

Gibt es in diesem Bereich schon einen Fortschritt?

Habe gestern Abend erst wieder Netmon bei Freifunk Franken gesehen. Die Aufbereitung ist schon sehr ansehnlich :slight_smile: Auch die Aufbereitung des Routers ist sehr ansprechend zumal ich aus meinem IPv4 Netzwerk dieses aufrufen kann.

Netmon ist nicht mehr auf der Agenda da es auch im Backend leider sehr veraltet ist.
Außerdem arbeiten wir gerade an einer neuen Map die demnächst sicher auch im Testbetrieb startet. :slight_smile:

Aus reiner Neugier, gibt es schon Screenshots?

Leider nicht, evtl ändert sich da auch Designtechnisch noch was.

Siehe:
http://map.dev.ffrl.de

Ich experimentiere gerade mit Graphite als Storage-Backend für die Stats und hab das exemplarisch schon mal in unseren Graphen eingebaut.
Für die Darstellung wird aktuell Chart.js verwendet.
In den nächsten Tagen möchte ich aber noch weitere Statistiken erfassen und darstellen (Traffic, Uptime, etc.).
Die Erfassung läuft momentan rein passiv über nodes.json vom ffmap-backend oder Alfred-Daten, die man schön durch jq zum Filtern und direkt per netcat in Graphite pipen kann.

Vielleicht wäre das ja ein Thema für einen Workshop auf dem Freifunk-Tag :slight_smile:

Hier noch der Link zum bisherigen Fortschritt (bisher, wie gesagt, nur Client-Stats):

Quellcode gibt’s hier:

https://github.com/ffac/ffmap-d3/tree/charts

Achja, Ziel ist natürlich, das ganze später dann auch als Modul in der neuen Map einbinden zu können.
Stehe dazu auch schon mit @johnyb in Kontakt.

3 Likes

Bitte nicht zu früh ansetzen, den Workshop :wink: Also nich schon um 8 oder so :sleeping:

1 Like

Da der Graph selbst auf d3.js basiert, habe ich die Statistiken mal neu geschrieben, so dass jetzt statt jQuery und Chart.js auch dort nur noch d3.js verwendet wird.
Es sind allerdings noch einige kleine Anpassungen und Korrekturen (Axen-Beschriftungen, Layout, Node-Info-Seite, weitere Stats, etc.) zu erledigen.
Zwischenstand: Freifunk Aachen - loading...
(Alt: Freifunk Aachen - loading...)

2 Likes