cleanup of reflector metric code (finish removing unused code)
This commit is contained in:
		@@ -29,7 +29,6 @@ go_library(
 | 
				
			|||||||
        "//pkg/registry/rbac/rest:go_default_library",
 | 
					        "//pkg/registry/rbac/rest:go_default_library",
 | 
				
			||||||
        "//pkg/serviceaccount:go_default_library",
 | 
					        "//pkg/serviceaccount:go_default_library",
 | 
				
			||||||
        "//pkg/util/flag:go_default_library",
 | 
					        "//pkg/util/flag:go_default_library",
 | 
				
			||||||
        "//pkg/util/reflector/prometheus:go_default_library",
 | 
					 | 
				
			||||||
        "//pkg/util/workqueue/prometheus:go_default_library",
 | 
					        "//pkg/util/workqueue/prometheus:go_default_library",
 | 
				
			||||||
        "//pkg/version:go_default_library",
 | 
					        "//pkg/version:go_default_library",
 | 
				
			||||||
        "//pkg/version/verflag:go_default_library",
 | 
					        "//pkg/version/verflag:go_default_library",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -78,7 +78,6 @@ import (
 | 
				
			|||||||
	rbacrest "k8s.io/kubernetes/pkg/registry/rbac/rest"
 | 
						rbacrest "k8s.io/kubernetes/pkg/registry/rbac/rest"
 | 
				
			||||||
	"k8s.io/kubernetes/pkg/serviceaccount"
 | 
						"k8s.io/kubernetes/pkg/serviceaccount"
 | 
				
			||||||
	utilflag "k8s.io/kubernetes/pkg/util/flag"
 | 
						utilflag "k8s.io/kubernetes/pkg/util/flag"
 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/util/reflector/prometheus" // for reflector metric registration
 | 
					 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/util/workqueue/prometheus" // for workqueue metric registration
 | 
						_ "k8s.io/kubernetes/pkg/util/workqueue/prometheus" // for workqueue metric registration
 | 
				
			||||||
	"k8s.io/kubernetes/pkg/version"
 | 
						"k8s.io/kubernetes/pkg/version"
 | 
				
			||||||
	"k8s.io/kubernetes/pkg/version/verflag"
 | 
						"k8s.io/kubernetes/pkg/version/verflag"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -43,7 +43,6 @@ filegroup(
 | 
				
			|||||||
        "//pkg/util/pod:all-srcs",
 | 
					        "//pkg/util/pod:all-srcs",
 | 
				
			||||||
        "//pkg/util/procfs:all-srcs",
 | 
					        "//pkg/util/procfs:all-srcs",
 | 
				
			||||||
        "//pkg/util/prometheusclientgo:all-srcs",
 | 
					        "//pkg/util/prometheusclientgo:all-srcs",
 | 
				
			||||||
        "//pkg/util/reflector/prometheus:all-srcs",
 | 
					 | 
				
			||||||
        "//pkg/util/removeall:all-srcs",
 | 
					        "//pkg/util/removeall:all-srcs",
 | 
				
			||||||
        "//pkg/util/resizefs:all-srcs",
 | 
					        "//pkg/util/resizefs:all-srcs",
 | 
				
			||||||
        "//pkg/util/resourcecontainer:all-srcs",
 | 
					        "//pkg/util/resourcecontainer:all-srcs",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,7 +8,6 @@ go_library(
 | 
				
			|||||||
    deps = [
 | 
					    deps = [
 | 
				
			||||||
        "//pkg/client/metrics/prometheus:go_default_library",
 | 
					        "//pkg/client/metrics/prometheus:go_default_library",
 | 
				
			||||||
        "//pkg/util/prometheusclientgo/leaderelection:go_default_library",
 | 
					        "//pkg/util/prometheusclientgo/leaderelection:go_default_library",
 | 
				
			||||||
        "//pkg/util/reflector/prometheus:go_default_library",
 | 
					 | 
				
			||||||
        "//pkg/util/workqueue/prometheus:go_default_library",
 | 
					        "//pkg/util/workqueue/prometheus:go_default_library",
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,6 +20,5 @@ package prometheusclientgo
 | 
				
			|||||||
import (
 | 
					import (
 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/client/metrics/prometheus"              // for client metric registration
 | 
						_ "k8s.io/kubernetes/pkg/client/metrics/prometheus"              // for client metric registration
 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/util/prometheusclientgo/leaderelection" // for leader election metric registration
 | 
						_ "k8s.io/kubernetes/pkg/util/prometheusclientgo/leaderelection" // for leader election metric registration
 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/util/reflector/prometheus"              // for reflector metric registration
 | 
					 | 
				
			||||||
	_ "k8s.io/kubernetes/pkg/util/workqueue/prometheus"              // for workqueue metric registration
 | 
						_ "k8s.io/kubernetes/pkg/util/workqueue/prometheus"              // for workqueue metric registration
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,29 +0,0 @@
 | 
				
			|||||||
package(default_visibility = ["//visibility:public"])
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
load(
 | 
					 | 
				
			||||||
    "@io_bazel_rules_go//go:def.bzl",
 | 
					 | 
				
			||||||
    "go_library",
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
go_library(
 | 
					 | 
				
			||||||
    name = "go_default_library",
 | 
					 | 
				
			||||||
    srcs = ["prometheus.go"],
 | 
					 | 
				
			||||||
    importpath = "k8s.io/kubernetes/pkg/util/reflector/prometheus",
 | 
					 | 
				
			||||||
    deps = [
 | 
					 | 
				
			||||||
        "//staging/src/k8s.io/client-go/tools/cache:go_default_library",
 | 
					 | 
				
			||||||
        "//vendor/github.com/prometheus/client_golang/prometheus:go_default_library",
 | 
					 | 
				
			||||||
    ],
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
filegroup(
 | 
					 | 
				
			||||||
    name = "package-srcs",
 | 
					 | 
				
			||||||
    srcs = glob(["**"]),
 | 
					 | 
				
			||||||
    tags = ["automanaged"],
 | 
					 | 
				
			||||||
    visibility = ["//visibility:private"],
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
filegroup(
 | 
					 | 
				
			||||||
    name = "all-srcs",
 | 
					 | 
				
			||||||
    srcs = [":package-srcs"],
 | 
					 | 
				
			||||||
    tags = ["automanaged"],
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
@@ -1,126 +0,0 @@
 | 
				
			|||||||
/*
 | 
					 | 
				
			||||||
Copyright 2016 The Kubernetes Authors.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Licensed under the Apache License, Version 2.0 (the "License");
 | 
					 | 
				
			||||||
you may not use this file except in compliance with the License.
 | 
					 | 
				
			||||||
You may obtain a copy of the License at
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    http://www.apache.org/licenses/LICENSE-2.0
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Unless required by applicable law or agreed to in writing, software
 | 
					 | 
				
			||||||
distributed under the License is distributed on an "AS IS" BASIS,
 | 
					 | 
				
			||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
					 | 
				
			||||||
See the License for the specific language governing permissions and
 | 
					 | 
				
			||||||
limitations under the License.
 | 
					 | 
				
			||||||
*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Package prometheus sets the cache DefaultMetricsFactory to produce
 | 
					 | 
				
			||||||
// prometheus metrics. To use this package, you just have to import it.
 | 
					 | 
				
			||||||
package prometheus
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import (
 | 
					 | 
				
			||||||
	"k8s.io/client-go/tools/cache"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	"github.com/prometheus/client_golang/prometheus"
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const reflectorSubsystem = "reflector"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var (
 | 
					 | 
				
			||||||
	listsTotal = prometheus.NewCounterVec(prometheus.CounterOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "lists_total",
 | 
					 | 
				
			||||||
		Help:      "Total number of API lists done by the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	listsDuration = prometheus.NewSummaryVec(prometheus.SummaryOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "list_duration_seconds",
 | 
					 | 
				
			||||||
		Help:      "How long an API list takes to return and decode for the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	itemsPerList = prometheus.NewSummaryVec(prometheus.SummaryOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "items_per_list",
 | 
					 | 
				
			||||||
		Help:      "How many items an API list returns to the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	watchesTotal = prometheus.NewCounterVec(prometheus.CounterOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "watches_total",
 | 
					 | 
				
			||||||
		Help:      "Total number of API watches done by the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	shortWatchesTotal = prometheus.NewCounterVec(prometheus.CounterOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "short_watches_total",
 | 
					 | 
				
			||||||
		Help:      "Total number of short API watches done by the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	watchDuration = prometheus.NewSummaryVec(prometheus.SummaryOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "watch_duration_seconds",
 | 
					 | 
				
			||||||
		Help:      "How long an API watch takes to return and decode for the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	itemsPerWatch = prometheus.NewSummaryVec(prometheus.SummaryOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "items_per_watch",
 | 
					 | 
				
			||||||
		Help:      "How many items an API watch returns to the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	lastResourceVersion = prometheus.NewGaugeVec(prometheus.GaugeOpts{
 | 
					 | 
				
			||||||
		Subsystem: reflectorSubsystem,
 | 
					 | 
				
			||||||
		Name:      "last_resource_version",
 | 
					 | 
				
			||||||
		Help:      "Last resource version seen for the reflectors",
 | 
					 | 
				
			||||||
	}, []string{"name"})
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func init() {
 | 
					 | 
				
			||||||
	prometheus.MustRegister(listsTotal)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(listsDuration)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(itemsPerList)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(watchesTotal)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(shortWatchesTotal)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(watchDuration)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(itemsPerWatch)
 | 
					 | 
				
			||||||
	prometheus.MustRegister(lastResourceVersion)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
type prometheusMetricsProvider struct{}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewListsMetric(name string) cache.CounterMetric {
 | 
					 | 
				
			||||||
	return listsTotal.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// use summary to get averages and percentiles
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewListDurationMetric(name string) cache.SummaryMetric {
 | 
					 | 
				
			||||||
	return listsDuration.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// use summary to get averages and percentiles
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewItemsInListMetric(name string) cache.SummaryMetric {
 | 
					 | 
				
			||||||
	return itemsPerList.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewWatchesMetric(name string) cache.CounterMetric {
 | 
					 | 
				
			||||||
	return watchesTotal.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewShortWatchesMetric(name string) cache.CounterMetric {
 | 
					 | 
				
			||||||
	return shortWatchesTotal.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// use summary to get averages and percentiles
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewWatchDurationMetric(name string) cache.SummaryMetric {
 | 
					 | 
				
			||||||
	return watchDuration.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// use summary to get averages and percentiles
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewItemsInWatchMetric(name string) cache.SummaryMetric {
 | 
					 | 
				
			||||||
	return itemsPerWatch.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (prometheusMetricsProvider) NewLastResourceVersionMetric(name string) cache.GaugeMetric {
 | 
					 | 
				
			||||||
	return lastResourceVersion.WithLabelValues(name)
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user