The router id "router_id" is only evaluated based on the
router_netif table. If the corresponding entry in the router
table is missing, an error occurs.
To deal with that, we now use the "olddata" variable for ifs,
which is initialized based on the router table. If nothing is
found there, we trigger delete_router to get rid of fragments
in other tables.
The latter is necessary, as we identify routers by MAC addresses
and thus old entries will keep to be a problem if just a new
entry is added to router_netif.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This is much easier to maintain and prevents from having a
wrong average if e.g. w2mesh and w5mesh are present, but only
the better one is used.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This patch distinguishes between routers and gateways:
- For routers, we still use the bat0 data
- For gateways, we aggregate eth0.1, eth1.1, w2ap and w5ap
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This introduced a boolean gateway field, which is set based on
the gateway connections sent via alfred.
If a device provides no gateways which it is connected to, it is
assumed to respresent a gateway.
This requires changes to the MySQL database!
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This patch aims at showing the client-caused traffic. We use
bat0 for this, at this seems to be the easiest way which does not
require router-specific ifs etc.
To be done (not addressed in this patch):
- Readjust number of new routers to match height of left and right
column
This requires changes to the MySQL database!
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This change the behavior concerning the displayed netif name in
the legend of the neighbor stats plot. Previously, the netif name
of the device was shown, now we show the netif name corresponding
to the neighbor. This is necessary, as we do not log netif names
for neighbors.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
scripts/defragtables.py:
- If run without argument, all tables EXCEPT stats are defragmented
(quick run)
- If run with argument e.g. "1", all table INCLUDING stats are
defragmented (will take about one hour)
scripts/defragtable.py <space-separated list of tables>:
- Defragments the specified tables; will crash if table does not
exist
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
If a router is currently not connected as neighbor, we don't see
its history. This patch shows all current and former neighbors.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
By default, position popup is off again until you select the layer:
With the layer enabled, behavior is as before.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The data for each netif is only loaded when the respective row
is clicked.
Correspondingly, br-mesh is loaded initially.
So far, it is unclear how big the impact of the netif filter in
MySQL transactions is, as those have no key of their own.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
With this patch, only the neighbor stats for the last day are
loaded by default. If you want more, a hyperlink is implemented
for this purpose.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>