diff --git a/rpc-pool.go b/rpc-pool.go index 79ef36a..3819546 100644 --- a/rpc-pool.go +++ b/rpc-pool.go @@ -56,15 +56,19 @@ var ( }) ) +var start time.Time + func MeasureLatency(fn func() ([]byte, error)) ([]byte, error) { - start := time.Now() + start = time.Now() data, err := fn() if err != nil { return data, err } elapsed := time.Since(start).Milliseconds() - remoteCartLatency.Add(float64(elapsed)) - remoteCartCallsTotal.Inc() + go func() { + remoteCartLatency.Add(float64(elapsed)) + remoteCartCallsTotal.Inc() + }() return data, nil }