mirror of https://github.com/EdgeVPNio/evio.git
Fix incorrect tunnel data
parent
f84a6dd04d
commit
7edd056548
|
@ -38,7 +38,7 @@ class OverlayVisualizer(ControllerModule):
|
||||||
# Visualizer webservice URL
|
# Visualizer webservice URL
|
||||||
self._vis_address = "http://" + self._cm_config["WebServiceAddress"]
|
self._vis_address = "http://" + self._cm_config["WebServiceAddress"]
|
||||||
self._req_url = "{}/EVIO/nodes/{}".format(self._vis_address, self.node_id)
|
self._req_url = "{}/EVIO/nodes/{}".format(self._vis_address, self.node_id)
|
||||||
self._vis_ds = None
|
self._vis_ds:dict
|
||||||
|
|
||||||
def initialize(self):
|
def initialize(self):
|
||||||
# We're using the pub-sub model here to gather data for the visualizer
|
# We're using the pub-sub model here to gather data for the visualizer
|
||||||
|
@ -109,21 +109,17 @@ class OverlayVisualizer(ControllerModule):
|
||||||
|
|
||||||
def build_tunnel_data(self, ds):
|
def build_tunnel_data(self, ds):
|
||||||
for olid in ds["VizData"]:
|
for olid in ds["VizData"]:
|
||||||
if (
|
if ("Topology" in ds["VizData"][olid]):
|
||||||
"LinkManager" not in ds["VizData"][olid]
|
for tnlid in ds["VizData"][olid]["Topology"]:
|
||||||
or "Topology" not in ds["VizData"][olid]
|
ds["VizData"][olid]["Tunnels"][tnlid] = \
|
||||||
):
|
ds["VizData"][olid]["Topology"][tnlid]
|
||||||
continue
|
if ("LinkManager" in ds["VizData"][olid]):
|
||||||
|
for tnlid in ds["VizData"][olid]["LinkManager"]:
|
||||||
for tnlid in ds["VizData"][olid]["LinkManager"]:
|
ds["VizData"][olid]["Tunnels"][tnlid].update(
|
||||||
ds["VizData"][olid]["Tunnels"][tnlid] = ds["VizData"][olid]["Topology"][
|
ds["VizData"][olid]["LinkManager"][tnlid]
|
||||||
tnlid
|
)
|
||||||
]
|
ds["VizData"][olid].pop("LinkManager", None)
|
||||||
ds["VizData"][olid]["Tunnels"][tnlid].update(
|
ds["VizData"][olid].pop("Topology", None)
|
||||||
ds["VizData"][olid]["LinkManager"][tnlid]
|
|
||||||
)
|
|
||||||
ds["VizData"][olid].pop("LinkManager")
|
|
||||||
ds["VizData"][olid].pop("Topology")
|
|
||||||
return ds
|
return ds
|
||||||
|
|
||||||
def timer_method(self):
|
def timer_method(self):
|
||||||
|
|
|
@ -154,20 +154,22 @@ class Topology(ControllerModule, CFX):
|
||||||
disc.presence()
|
disc.presence()
|
||||||
self._net_ovls[olid]["NewPeerCount"] += 1
|
self._net_ovls[olid]["NewPeerCount"] += 1
|
||||||
if self._net_ovls[olid]["NewPeerCount"] >= self.config["PeerDiscoveryCoalesce"]:
|
if self._net_ovls[olid]["NewPeerCount"] >= self.config["PeerDiscoveryCoalesce"]:
|
||||||
self.register_cbt("Logger", "LOG_DEBUG", "Coalesced {0} new peer discovery, "
|
self.log("LOG_DEBUG",
|
||||||
"initiating network refresh"
|
"Overlay %s - Coalesced %s new peer discovery, "
|
||||||
.format(self._net_ovls[olid]["NewPeerCount"]))
|
"initiating network refresh",
|
||||||
|
olid, self._net_ovls[olid]["NewPeerCount"])
|
||||||
self._update_overlay(olid)
|
self._update_overlay(olid)
|
||||||
else:
|
else:
|
||||||
self.register_cbt("Logger", "LOG_DEBUG", "{0} new peers discovered, delaying "
|
self.log("LOG_DEBUG",
|
||||||
"refresh".format(self._net_ovls[olid]["NewPeerCount"]))
|
"Overlay %s, %s new peers discovered, "
|
||||||
|
"delaying refresh",
|
||||||
|
olid, self._net_ovls[olid]["NewPeerCount"])
|
||||||
cbt.set_response(None, True)
|
cbt.set_response(None, True)
|
||||||
self.complete_cbt(cbt)
|
self.complete_cbt(cbt)
|
||||||
|
|
||||||
def req_handler_vis_data(self, cbt):
|
def req_handler_vis_data(self, cbt):
|
||||||
topo_data = {}
|
topo_data = {}
|
||||||
try:
|
try:
|
||||||
edges = {}
|
|
||||||
for olid in self._net_ovls:
|
for olid in self._net_ovls:
|
||||||
topo_data[olid] = {}
|
topo_data[olid] = {}
|
||||||
nb = self._net_ovls[olid]["NetBuilder"]
|
nb = self._net_ovls[olid]["NetBuilder"]
|
||||||
|
@ -179,9 +181,7 @@ class Topology(ControllerModule, CFX):
|
||||||
"CreatedTime": ce.created_time,
|
"CreatedTime": ce.created_time,
|
||||||
"ConnectedTime": ce.connected_time,
|
"ConnectedTime": ce.connected_time,
|
||||||
"State": ce.edge_state, "Type": ce.edge_type}
|
"State": ce.edge_state, "Type": ce.edge_type}
|
||||||
edges[ce.edge_id] = ced
|
topo_data[olid][ce.edge_id] = ced
|
||||||
if edges:
|
|
||||||
topo_data[olid] = edges
|
|
||||||
cbt.set_response({"Topology": topo_data}, bool(topo_data))
|
cbt.set_response({"Topology": topo_data}, bool(topo_data))
|
||||||
self.complete_cbt(cbt)
|
self.complete_cbt(cbt)
|
||||||
except KeyError:
|
except KeyError:
|
||||||
|
|
Loading…
Reference in New Issue