github.com/Cloud-Foundations/Dominator@v0.3.4/lib/resourcepool/metrics.go (about) 1 package resourcepool 2 3 import ( 4 "github.com/Cloud-Foundations/tricorder/go/tricorder" 5 "github.com/Cloud-Foundations/tricorder/go/tricorder/units" 6 ) 7 8 func (pool *Pool) registerMetrics(metricsSubDirname string) { 9 if metricsSubDirname == "" { 10 return 11 } 12 dir, err := tricorder.RegisterDirectory("resourcepool/" + metricsSubDirname) 13 if err != nil { 14 panic(err) 15 } 16 err = dir.RegisterMetric("maximum", &pool.max, units.None, 17 "maximum capacity") 18 if err != nil { 19 panic(err) 20 } 21 err = dir.RegisterMetric("num-in-use", &pool.numUsed, units.None, 22 "number in use") 23 if err != nil { 24 panic(err) 25 } 26 err = dir.RegisterMetric("num-unused", &pool.numUnused, units.None, 27 "number in use") 28 if err != nil { 29 panic(err) 30 } 31 err = dir.RegisterMetric("num-releasing", &pool.numReleasing, units.None, 32 "number being released") 33 if err != nil { 34 panic(err) 35 } 36 }