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  }