changed should peer update logic on metrics and fixed ee ref

This commit is contained in:
0xdcarns 2022-09-28 16:31:46 -04:00
parent eb75a6829c
commit b6d18f86a3
2 changed files with 6 additions and 2 deletions

View file

@ -47,7 +47,7 @@ func resetFailover() {
nets, err := logic.GetNetworks()
if err == nil {
for _, net := range nets {
err = ResetFailover(net.NetID)
err = eelogic.ResetFailover(net.NetID)
if err != nil {
logger.Log(0, "failed to reset failover on network", net.NetID, ":", err.Error())
}

View file

@ -143,6 +143,7 @@ func UpdateMetrics(client mqtt.Client, msg mqtt.Message) {
}
if shouldUpdate {
logger.Log(2, "updating peers after node", currentNode.Name, currentNode.Network, "detected connectivity issues")
if err = PublishPeerUpdate(&currentNode, true); err != nil {
logger.Log(0, "failed to publish update after failover peer change for node", currentNode.Name, currentNode.Network)
}
@ -266,9 +267,12 @@ func updateNodeMetrics(currentNode *models.Node, newMetrics *models.Metrics) boo
}
shouldUpdate := false
for k, v := range oldMetrics.FailoverPeers {
if len(newMetrics.FailoverPeers[k]) > 0 && len(v) == 0 {
shouldUpdate = true
}
if len(v) > 0 && len(newMetrics.FailoverPeers[k]) == 0 {
newMetrics.FailoverPeers[k] = v
shouldUpdate = true
}
}