From 0983ed128fa4cf9fa42d1f0fe1eab3761292e683 Mon Sep 17 00:00:00 2001 From: fengzi Date: Thu, 19 Apr 2018 18:19:02 +0800 Subject: [PATCH] metrics:add heap release metrics --- metrics/metrics.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/metrics/metrics.go b/metrics/metrics.go index 213686136..776167e67 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -95,11 +95,14 @@ func collectSystemMetrics() { } allocs := metrics.GetOrRegisterMeter("system_allocs", nil) + // totalAllocs := metrics.GetOrRegisterMeter("system_total_allocs", nil) sys := metrics.GetOrRegisterMeter("system_sys", nil) frees := metrics.GetOrRegisterMeter("system_frees", nil) heapInuse := metrics.GetOrRegisterMeter("system_heapInuse", nil) stackInuse := metrics.GetOrRegisterMeter("system_stackInuse", nil) + releases := metrics.GetOrRegisterMeter("system_release", nil) + for i := 1; ; i++ { select { case <-quitCh: @@ -107,10 +110,13 @@ func collectSystemMetrics() { default: runtime.ReadMemStats(memstats[i%2]) allocs.Mark(int64(memstats[i%2].Alloc - memstats[(i-1)%2].Alloc)) + sys.Mark(int64(memstats[i%2].Sys - memstats[(i-1)%2].Sys)) frees.Mark(int64(memstats[i%2].Frees - memstats[(i-1)%2].Frees)) heapInuse.Mark(int64(memstats[i%2].HeapInuse - memstats[(i-1)%2].HeapInuse)) stackInuse.Mark(int64(memstats[i%2].StackInuse - memstats[(i-1)%2].StackInuse)) + releases.Mark(int64(memstats[i%2].HeapReleased - memstats[(i-1)%2].HeapReleased)) + time.Sleep(2 * time.Second) } }