|
@@ -58,11 +58,14 @@ func Collect(iface string, peerMap models.PeerMap) (*models.Metrics, error) {
|
|
|
newMetric.Latency = 999
|
|
|
} else {
|
|
|
pingStats := pinger.Statistics()
|
|
|
- newMetric.Uptime = 1
|
|
|
- newMetric.Connected = true
|
|
|
- newMetric.Latency = pingStats.AvgRtt.Milliseconds()
|
|
|
+ if pingStats.PacketsRecv > 0 {
|
|
|
+ newMetric.Uptime = 1
|
|
|
+ newMetric.Connected = true
|
|
|
+ newMetric.Latency = pingStats.AvgRtt.Milliseconds()
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
// check device peer to see if WG is working if ping failed
|
|
|
if !newMetric.Connected {
|
|
|
if currPeer.ReceiveBytes > 0 &&
|
|
@@ -72,6 +75,7 @@ func Collect(iface string, peerMap models.PeerMap) (*models.Metrics, error) {
|
|
|
newMetric.Uptime = 1
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
newMetric.TotalTime = 1
|
|
|
metrics.Connectivity[id] = newMetric
|
|
|
}
|