diff options
author | Caleb Bassi <calebjbassi@gmail.com> | 2018-12-10 14:41:35 -0800 |
---|---|---|
committer | Caleb Bassi <calebjbassi@gmail.com> | 2018-12-10 14:43:01 -0800 |
commit | f5ad5e84411c4c89cf88cf6c8d4e8b46b80dba81 (patch) | |
tree | dda3bf0e73460a2262e4e832223026202707f7a0 | |
parent | defda4a38af4e949b39c2977d9f69d36482a64ea (diff) |
Fix double counting network data with VPN (Close #61)
-rw-r--r-- | src/widgets/net.go | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/widgets/net.go b/src/widgets/net.go index 2dc5815..6902c0f 100644 --- a/src/widgets/net.go +++ b/src/widgets/net.go @@ -45,13 +45,19 @@ func NewNet() *Net { } func (self *Net) update() { - // `false` causes psutil to group all network activity - interfaces, err := psNet.IOCounters(false) + interfaces, err := psNet.IOCounters(true) if err != nil { log.Printf("failed to get network activity from gopsutil: %v", err) } - curRecvTotal := interfaces[0].BytesRecv - curSentTotal := interfaces[0].BytesSent + var curRecvTotal uint64 + var curSentTotal uint64 + for _, _interface := range interfaces { + // ignore VPN interface + if _interface.Name != "tun0" { + curRecvTotal += _interface.BytesRecv + curSentTotal += _interface.BytesSent + } + } var recvRecent uint64 var sentRecent uint64 |