diff --git a/pkg/controller/acmechallenges/controller.go b/pkg/controller/acmechallenges/controller.go index efc6b5597..c3bd3357d 100644 --- a/pkg/controller/acmechallenges/controller.go +++ b/pkg/controller/acmechallenges/controller.go @@ -37,7 +37,6 @@ import ( "github.com/jetstack/cert-manager/pkg/issuer/acme/dns" "github.com/jetstack/cert-manager/pkg/issuer/acme/http" logf "github.com/jetstack/cert-manager/pkg/logs" - "github.com/jetstack/cert-manager/pkg/metrics" ) type Controller struct { @@ -64,7 +63,6 @@ type Controller struct { watchedInformers []cache.InformerSynced queue workqueue.RateLimitingInterface - metrics *metrics.Metrics scheduler *scheduler.Scheduler } @@ -106,7 +104,6 @@ func New(ctx *controllerpkg.Context) (*Controller, error) { ctrl.helper = issuer.NewHelper(ctrl.issuerLister, ctrl.clusterIssuerLister) ctrl.acmeHelper = acme.NewHelper(ctrl.secretLister, ctrl.Context.ClusterResourceNamespace) - ctrl.metrics = metrics.Default ctrl.httpSolver = http.NewSolver(ctx) var err error diff --git a/pkg/controller/acmechallenges/sync.go b/pkg/controller/acmechallenges/sync.go index 1ae7f19a3..ebd3216d5 100644 --- a/pkg/controller/acmechallenges/sync.go +++ b/pkg/controller/acmechallenges/sync.go @@ -33,6 +33,7 @@ import ( "github.com/jetstack/cert-manager/pkg/feature" dnsutil "github.com/jetstack/cert-manager/pkg/issuer/acme/dns/util" logf "github.com/jetstack/cert-manager/pkg/logs" + "github.com/jetstack/cert-manager/pkg/metrics" acmeapi "github.com/jetstack/cert-manager/third_party/crypto/acme" ) @@ -56,7 +57,7 @@ type solver interface { // Sync will process this ACME Challenge. // It is the core control function for ACME challenges. func (c *Controller) Sync(ctx context.Context, ch *cmapi.Challenge) (err error) { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + metrics.Default.IncrementSyncCallCount(ControllerName) log := logf.FromContext(ctx).WithValues("dnsName", ch.Spec.DNSName, "type", ch.Spec.Type) ctx = logf.NewContext(ctx, log) diff --git a/pkg/controller/acmeorders/controller.go b/pkg/controller/acmeorders/controller.go index 3f144e4d4..7b41955da 100644 --- a/pkg/controller/acmeorders/controller.go +++ b/pkg/controller/acmeorders/controller.go @@ -36,7 +36,6 @@ import ( controllerpkg "github.com/jetstack/cert-manager/pkg/controller" "github.com/jetstack/cert-manager/pkg/issuer" logf "github.com/jetstack/cert-manager/pkg/logs" - "github.com/jetstack/cert-manager/pkg/metrics" ) type Controller struct { @@ -58,7 +57,6 @@ type Controller struct { watchedInformers []cache.InformerSynced queue workqueue.RateLimitingInterface - metrics *metrics.Metrics // used for testing clock clock.Clock @@ -96,7 +94,6 @@ func New(ctx *controllerpkg.Context) *Controller { secretInformer := ctrl.KubeSharedInformerFactory.Core().V1().Secrets() ctrl.watchedInformers = append(ctrl.watchedInformers, secretInformer.Informer().HasSynced) ctrl.secretLister = secretInformer.Lister() - ctrl.metrics = metrics.Default ctrl.helper = issuer.NewHelper(ctrl.issuerLister, ctrl.clusterIssuerLister) ctrl.acmeHelper = acme.NewHelper(ctrl.secretLister, ctrl.Context.ClusterResourceNamespace) diff --git a/pkg/controller/acmeorders/sync.go b/pkg/controller/acmeorders/sync.go index 1d0692fba..9865d7987 100644 --- a/pkg/controller/acmeorders/sync.go +++ b/pkg/controller/acmeorders/sync.go @@ -33,6 +33,7 @@ import ( "github.com/jetstack/cert-manager/pkg/acme" acmecl "github.com/jetstack/cert-manager/pkg/acme/client" cmapi "github.com/jetstack/cert-manager/pkg/apis/certmanager/v1alpha1" + "github.com/jetstack/cert-manager/pkg/metrics" acmeapi "github.com/jetstack/cert-manager/third_party/crypto/acme" "k8s.io/klog" ) @@ -48,7 +49,7 @@ var ( // - create a Challenge resource in order to fulfill required validations // - waiting for Challenge resources to enter the 'ready' state func (c *Controller) Sync(ctx context.Context, o *cmapi.Order) (err error) { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + metrics.Default.IncrementSyncCallCount(ControllerName) oldOrder := o o = o.DeepCopy() diff --git a/pkg/controller/certificates/sync.go b/pkg/controller/certificates/sync.go index 5f57a3f50..ef12cd248 100644 --- a/pkg/controller/certificates/sync.go +++ b/pkg/controller/certificates/sync.go @@ -69,7 +69,7 @@ var ( ) func (c *Controller) Sync(ctx context.Context, crt *v1alpha1.Certificate) (err error) { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + c.metrics.IncrementSyncCallCount(ControllerName) log := logf.FromContext(ctx) dbg := log.V(logf.DebugLevel) diff --git a/pkg/controller/clusterissuers/controller.go b/pkg/controller/clusterissuers/controller.go index 114775548..d2ebd8326 100644 --- a/pkg/controller/clusterissuers/controller.go +++ b/pkg/controller/clusterissuers/controller.go @@ -33,7 +33,6 @@ import ( controllerpkg "github.com/jetstack/cert-manager/pkg/controller" "github.com/jetstack/cert-manager/pkg/issuer" logf "github.com/jetstack/cert-manager/pkg/logs" - "github.com/jetstack/cert-manager/pkg/metrics" ) type Controller struct { @@ -49,7 +48,6 @@ type Controller struct { watchedInformers []cache.InformerSynced queue workqueue.RateLimitingInterface - metrics *metrics.Metrics } func New(ctx *controllerpkg.Context) *Controller { @@ -68,7 +66,6 @@ func New(ctx *controllerpkg.Context) *Controller { ctrl.secretLister = secretsInformer.Lister() ctrl.issuerFactory = issuer.NewIssuerFactory(ctx) ctrl.ctx = logf.NewContext(ctx.RootContext, nil, ControllerName) - ctrl.metrics = metrics.Default return ctrl } diff --git a/pkg/controller/clusterissuers/sync.go b/pkg/controller/clusterissuers/sync.go index 34ef92fa8..99cc4a979 100644 --- a/pkg/controller/clusterissuers/sync.go +++ b/pkg/controller/clusterissuers/sync.go @@ -28,6 +28,7 @@ import ( "github.com/jetstack/cert-manager/pkg/apis/certmanager/v1alpha1" "github.com/jetstack/cert-manager/pkg/apis/certmanager/validation" logf "github.com/jetstack/cert-manager/pkg/logs" + "github.com/jetstack/cert-manager/pkg/metrics" ) const ( @@ -38,7 +39,7 @@ const ( ) func (c *Controller) Sync(ctx context.Context, iss *v1alpha1.ClusterIssuer) (err error) { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + metrics.Default.IncrementSyncCallCount(ControllerName) log := logf.FromContext(ctx) diff --git a/pkg/controller/ingress-shim/BUILD.bazel b/pkg/controller/ingress-shim/BUILD.bazel index 703b7f5fc..3c1f5baf1 100644 --- a/pkg/controller/ingress-shim/BUILD.bazel +++ b/pkg/controller/ingress-shim/BUILD.bazel @@ -43,7 +43,6 @@ go_test( deps = [ "//pkg/apis/certmanager/v1alpha1:go_default_library", "//pkg/controller/test:go_default_library", - "//pkg/metrics:go_default_library", "//test/unit/gen:go_default_library", "//vendor/k8s.io/api/extensions/v1beta1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/controller/ingress-shim/controller.go b/pkg/controller/ingress-shim/controller.go index bb16f29bc..424afd9e6 100644 --- a/pkg/controller/ingress-shim/controller.go +++ b/pkg/controller/ingress-shim/controller.go @@ -38,7 +38,6 @@ import ( cmlisters "github.com/jetstack/cert-manager/pkg/client/listers/certmanager/v1alpha1" controllerpkg "github.com/jetstack/cert-manager/pkg/controller" "github.com/jetstack/cert-manager/pkg/issuer" - "github.com/jetstack/cert-manager/pkg/metrics" "github.com/jetstack/cert-manager/pkg/util" extinformers "k8s.io/client-go/informers/extensions/v1beta1" ) @@ -73,7 +72,6 @@ type Controller struct { workerWg sync.WaitGroup syncedFuncs []cache.InformerSynced defaults defaults - metrics *metrics.Metrics } // New returns a new Certificates controller. It sets up the informer handler @@ -109,7 +107,6 @@ func New( } ctrl.helper = issuer.NewHelper(ctrl.issuerLister, ctrl.clusterIssuerLister) - ctrl.metrics = metrics.Default return ctrl } diff --git a/pkg/controller/ingress-shim/sync.go b/pkg/controller/ingress-shim/sync.go index bc7190d49..328bf4bb6 100644 --- a/pkg/controller/ingress-shim/sync.go +++ b/pkg/controller/ingress-shim/sync.go @@ -30,6 +30,7 @@ import ( "k8s.io/klog" "github.com/jetstack/cert-manager/pkg/apis/certmanager/v1alpha1" + "github.com/jetstack/cert-manager/pkg/metrics" "github.com/jetstack/cert-manager/pkg/util" ) @@ -60,7 +61,7 @@ const ( var ingressGVK = extv1beta1.SchemeGroupVersion.WithKind("Ingress") func (c *Controller) Sync(ctx context.Context, ing *extv1beta1.Ingress) error { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + metrics.Default.IncrementSyncCallCount(ControllerName) if !shouldSync(ing, c.defaults.autoCertificateAnnotations) { klog.Infof("Not syncing ingress %s/%s as it does not contain necessary annotations", ing.Namespace, ing.Name) diff --git a/pkg/controller/ingress-shim/sync_test.go b/pkg/controller/ingress-shim/sync_test.go index 139f9e555..0f0211bc7 100644 --- a/pkg/controller/ingress-shim/sync_test.go +++ b/pkg/controller/ingress-shim/sync_test.go @@ -28,7 +28,6 @@ import ( "github.com/jetstack/cert-manager/pkg/apis/certmanager/v1alpha1" testpkg "github.com/jetstack/cert-manager/pkg/controller/test" - "github.com/jetstack/cert-manager/pkg/metrics" "github.com/jetstack/cert-manager/test/unit/gen" ) @@ -911,8 +910,7 @@ func TestSync(t *testing.T) { issuerKind: test.DefaultIssuerKind, autoCertificateAnnotations: []string{testAcmeTLSAnnotation}, }, - helper: &fakeHelper{issuer: test.Issuer}, - metrics: metrics.Default, + helper: &fakeHelper{issuer: test.Issuer}, } b.Sync() diff --git a/pkg/controller/issuers/controller.go b/pkg/controller/issuers/controller.go index 8ebab97f6..f27db5e3e 100644 --- a/pkg/controller/issuers/controller.go +++ b/pkg/controller/issuers/controller.go @@ -33,7 +33,6 @@ import ( controllerpkg "github.com/jetstack/cert-manager/pkg/controller" "github.com/jetstack/cert-manager/pkg/issuer" logf "github.com/jetstack/cert-manager/pkg/logs" - "github.com/jetstack/cert-manager/pkg/metrics" ) type Controller struct { @@ -50,7 +49,6 @@ type Controller struct { watchedInformers []cache.InformerSynced queue workqueue.RateLimitingInterface - metrics *metrics.Metrics } func New(ctx *controllerpkg.Context) *Controller { @@ -72,7 +70,6 @@ func New(ctx *controllerpkg.Context) *Controller { ctrl.secretLister = secretsInformer.Lister() ctrl.issuerFactory = issuer.NewIssuerFactory(ctx) ctrl.ctx = logf.NewContext(ctx.RootContext, nil, ControllerName) - ctrl.metrics = metrics.Default return ctrl } diff --git a/pkg/controller/issuers/sync.go b/pkg/controller/issuers/sync.go index 1c1c7b4cb..8d19d760f 100644 --- a/pkg/controller/issuers/sync.go +++ b/pkg/controller/issuers/sync.go @@ -28,6 +28,7 @@ import ( "github.com/jetstack/cert-manager/pkg/apis/certmanager/v1alpha1" "github.com/jetstack/cert-manager/pkg/apis/certmanager/validation" logf "github.com/jetstack/cert-manager/pkg/logs" + "github.com/jetstack/cert-manager/pkg/metrics" ) const ( @@ -38,7 +39,7 @@ const ( ) func (c *Controller) Sync(ctx context.Context, iss *v1alpha1.Issuer) (err error) { - c.metrics.ControllerSyncCallCount.WithLabelValues(ControllerName).Inc() + metrics.Default.IncrementSyncCallCount(ControllerName) log := logf.FromContext(ctx) diff --git a/pkg/metrics/metrics.go b/pkg/metrics/metrics.go index 37feba3dc..ee5d9e3c8 100644 --- a/pkg/metrics/metrics.go +++ b/pkg/metrics/metrics.go @@ -195,3 +195,9 @@ func updateX509Expiry(name, namespace string, cert *x509.Certificate) { "name": name, "namespace": namespace}).Set(float64(expiryTime.Unix())) } + +func (m *Metrics) IncrementSyncCallCount(controllerName string) { + log := logf.FromContext(m.ctx) + log.V(logf.DebugLevel).Info("incrementing controller sync call count", "controllerName", controllerName) + ControllerSyncCallCount.WithLabelValues(controllerName).Inc() +}