Merge pull request #96904 from yuanhuaiwang/watchcache-metric-improve

improve watchCache metric
This commit is contained in:
Kubernetes Prow Robot 2020-12-09 00:58:49 -08:00 committed by GitHub
commit f2fb77a6a0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 0 deletions

View File

@ -56,12 +56,22 @@ var (
}, },
[]string{"resource"}, []string{"resource"},
) )
watchCacheCapacity = metrics.NewGaugeVec(
&metrics.GaugeOpts{
Name: "watch_cache_capacity",
Help: "Total capacity of watch cache broken by resource type.",
StabilityLevel: metrics.ALPHA,
},
[]string{"resource"},
)
) )
func init() { func init() {
legacyregistry.MustRegister(initCounter) legacyregistry.MustRegister(initCounter)
legacyregistry.MustRegister(watchCacheCapacityIncreaseTotal) legacyregistry.MustRegister(watchCacheCapacityIncreaseTotal)
legacyregistry.MustRegister(watchCacheCapacityDecreaseTotal) legacyregistry.MustRegister(watchCacheCapacityDecreaseTotal)
legacyregistry.MustRegister(watchCacheCapacity)
} }
// recordsWatchCacheCapacityChange record watchCache capacity resize(increase or decrease) operations. // recordsWatchCacheCapacityChange record watchCache capacity resize(increase or decrease) operations.
@ -71,4 +81,5 @@ func recordsWatchCacheCapacityChange(objType string, old, new int) {
return return
} }
watchCacheCapacityDecreaseTotal.WithLabelValues(objType).Inc() watchCacheCapacityDecreaseTotal.WithLabelValues(objType).Inc()
watchCacheCapacity.WithLabelValues(objType).Set(float64(new))
} }

View File

@ -216,6 +216,8 @@ func newWatchCache(
versioner: versioner, versioner: versioner,
objectType: objectType, objectType: objectType,
} }
objType := objectType.String()
watchCacheCapacity.WithLabelValues(objType).Set(float64(wc.capacity))
wc.cond = sync.NewCond(wc.RLocker()) wc.cond = sync.NewCond(wc.RLocker())
return wc return wc
} }