Unverified Commit fcaa726e authored by Kubernetes Prow Robot's avatar Kubernetes Prow Robot Committed by GitHub

Merge pull request #74080 from dims/ensure-prometheus-metrics-are-not-registered-twice

Ensure prometheus metrics are not registered twice
parents 98918243 8fa332cc
......@@ -16,7 +16,11 @@ limitations under the License.
package aws
import "github.com/prometheus/client_golang/prometheus"
import (
"sync"
"github.com/prometheus/client_golang/prometheus"
)
var (
awsAPIMetric = prometheus.NewHistogramVec(
......@@ -53,8 +57,12 @@ func recordAWSThrottlesMetric(operation string) {
awsAPIThrottlesMetric.With(prometheus.Labels{"operation_name": operation}).Inc()
}
var registerOnce sync.Once
func registerMetrics() {
prometheus.MustRegister(awsAPIMetric)
prometheus.MustRegister(awsAPIErrorMetric)
prometheus.MustRegister(awsAPIThrottlesMetric)
registerOnce.Do(func() {
prometheus.MustRegister(awsAPIMetric)
prometheus.MustRegister(awsAPIErrorMetric)
prometheus.MustRegister(awsAPIThrottlesMetric)
})
}
......@@ -16,7 +16,11 @@ limitations under the License.
package openstack
import "github.com/prometheus/client_golang/prometheus"
import (
"sync"
"github.com/prometheus/client_golang/prometheus"
)
const (
openstackSubsystem = "openstack"
......@@ -44,7 +48,11 @@ var (
)
)
var registerOnce sync.Once
func registerMetrics() {
prometheus.MustRegister(openstackOperationsLatency)
prometheus.MustRegister(openstackAPIRequestErrors)
registerOnce.Do(func() {
prometheus.MustRegister(openstackOperationsLatency)
prometheus.MustRegister(openstackAPIRequestErrors)
})
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment