From 40b52a6ed9b06b3d26b61fe68834f1c88dc84e6f Mon Sep 17 00:00:00 2001 From: 0xdcarns Date: Tue, 27 Sep 2022 10:24:41 -0400 Subject: [PATCH] add wg device for metrics if ICMP fails --- logic/metrics/metrics.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/logic/metrics/metrics.go b/logic/metrics/metrics.go index efa3b58b..e9f83cab 100644 --- a/logic/metrics/metrics.go +++ b/logic/metrics/metrics.go @@ -63,6 +63,15 @@ func Collect(iface string, peerMap models.PeerMap) (*models.Metrics, error) { newMetric.Latency = pingStats.AvgRtt.Milliseconds() } } + // check device peer to see if WG is working if ping failed + if !newMetric.Connected { + if currPeer.ReceiveBytes > 0 && + currPeer.TransmitBytes > 0 && + time.Now().Before(currPeer.LastHandshakeTime.Add(time.Minute<<1)) { + newMetric.Connected = true + newMetric.Uptime = 1 + } + } newMetric.TotalTime = 1 metrics.Connectivity[id] = newMetric }