From e7c93f4fa195c6790ceebc20b8f4dbace59f6edb Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Fri, 15 Nov 2019 18:40:37 -0800 Subject: [PATCH] feat(metrics): add function to trim idle meters --- metrics/bandwidth.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/metrics/bandwidth.go b/metrics/bandwidth.go index aa758e8..2d94b05 100644 --- a/metrics/bandwidth.go +++ b/metrics/bandwidth.go @@ -2,6 +2,8 @@ package metrics import ( + "time" + "github.com/libp2p/go-flow-metrics" "github.com/libp2p/go-libp2p-core/peer" "github.com/libp2p/go-libp2p-core/protocol" @@ -163,3 +165,11 @@ func (bwc *BandwidthCounter) Reset() { bwc.peerIn.Clear() bwc.peerOut.Clear() } + +// TrimIdle trims all timers idle since the given time. +func (bwc *BandwidthCounter) TrimIdle(since time.Time) { + bwc.peerIn.TrimIdle(since) + bwc.peerOut.TrimIdle(since) + bwc.protocolIn.TrimIdle(since) + bwc.protocolOut.TrimIdle(since) +}