From 6554ce9abb169feb2e1f360e6026b97d5206e01c Mon Sep 17 00:00:00 2001 From: Gerard Ryan Date: Sat, 1 Aug 2020 21:38:36 +0100 Subject: [PATCH] Add pdi name label to fail metrics --- .../clusterdeployment_created.go | 4 ++-- .../clusterdeployment_deleted.go | 4 ++-- pkg/localmetrics/localmetrics.go | 18 ++++++++++-------- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/pkg/controller/pagerdutyintegration/clusterdeployment_created.go b/pkg/controller/pagerdutyintegration/clusterdeployment_created.go index e1760a5e..94021bb1 100644 --- a/pkg/controller/pagerdutyintegration/clusterdeployment_created.go +++ b/pkg/controller/pagerdutyintegration/clusterdeployment_created.go @@ -98,11 +98,11 @@ func (r *ReconcilePagerDutyIntegration) handleCreate(pdclient pd.Client, pdi *pa var createErr error _, createErr = pdclient.CreateService(pdData) if createErr != nil { - localmetrics.UpdateMetricPagerDutyCreateFailure(1, ClusterID) + localmetrics.UpdateMetricPagerDutyCreateFailure(1, ClusterID, pdi.Name) return createErr } } - localmetrics.UpdateMetricPagerDutyCreateFailure(0, ClusterID) + localmetrics.UpdateMetricPagerDutyCreateFailure(0, ClusterID, pdi.Name) pdIntegrationKey, err = pdclient.GetIntegrationKey(pdData) if err != nil { diff --git a/pkg/controller/pagerdutyintegration/clusterdeployment_deleted.go b/pkg/controller/pagerdutyintegration/clusterdeployment_deleted.go index 376da35b..298cb30f 100644 --- a/pkg/controller/pagerdutyintegration/clusterdeployment_deleted.go +++ b/pkg/controller/pagerdutyintegration/clusterdeployment_deleted.go @@ -155,11 +155,11 @@ func (r *ReconcilePagerDutyIntegration) handleDelete(pdclient pd.Client, pdi *pa utils.DeleteFinalizer(cd, finalizer) err = r.client.Update(context.TODO(), cd) if err != nil { - metrics.UpdateMetricPagerDutyDeleteFailure(1, ClusterID) + metrics.UpdateMetricPagerDutyDeleteFailure(1, ClusterID, pdi.Name) return err } } - metrics.UpdateMetricPagerDutyDeleteFailure(0, ClusterID) + metrics.UpdateMetricPagerDutyDeleteFailure(0, ClusterID, pdi.Name) return nil } diff --git a/pkg/localmetrics/localmetrics.go b/pkg/localmetrics/localmetrics.go index c3b46dfa..9774f8b5 100644 --- a/pkg/localmetrics/localmetrics.go +++ b/pkg/localmetrics/localmetrics.go @@ -35,13 +35,13 @@ var ( Name: "pagerduty_create_failure", Help: "Metric for the failure of creating a cluster deployment.", ConstLabels: prometheus.Labels{"name": "pagerduty-operator"}, - }, []string{"clusterdeployment_name"}) + }, []string{"clusterdeployment_name", "pagerdutyintegration_name"}) MetricPagerDutyDeleteFailure = prometheus.NewGaugeVec(prometheus.GaugeOpts{ Name: "pagerduty_delete_failure", Help: "Metric for the failure of deleting a cluster deployment.", ConstLabels: prometheus.Labels{"name": "pagerduty-operator"}, - }, []string{"clusterdeployment_name"}) + }, []string{"clusterdeployment_name", "pagerdutyintegration_name"}) MetricPagerDutyHeartbeat = prometheus.NewSummary(prometheus.SummaryOpts{ Name: "pagerduty_heartbeat", @@ -92,17 +92,19 @@ func DeleteMetricPagerDutyIntegrationSecretLoaded(pdiName string) bool { } // UpdateMetricPagerDutyCreateFailure updates gauge to 1 when creation fails -func UpdateMetricPagerDutyCreateFailure(x int, cd string) { +func UpdateMetricPagerDutyCreateFailure(x int, cd string, pdiName string) { MetricPagerDutyCreateFailure.With(prometheus.Labels{ - "clusterdeployment_name": cd}).Set( - float64(x)) + "clusterdeployment_name": cd, + "pagerdutyintegration_name": pdiName, + }).Set(float64(x)) } // UpdateMetricPagerDutyDeleteFailure updates gauge to 1 when deletion fails -func UpdateMetricPagerDutyDeleteFailure(x int, cd string) { +func UpdateMetricPagerDutyDeleteFailure(x int, cd string, pdiName string) { MetricPagerDutyDeleteFailure.With(prometheus.Labels{ - "clusterdeployment_name": cd}).Set( - float64(x)) + "clusterdeployment_name": cd, + "pagerdutyintegration_name": pdiName, + }).Set(float64(x)) } // UpdateMetricPagerDutyHeartbeat curls the PD API, updates the gauge to 1