From 2d7be3a29a29b381816676734577b5112ed2f8ae Mon Sep 17 00:00:00 2001 From: ZeynabRezaei <72091463+ZeynabRezaei@users.noreply.github.com> Date: Mon, 8 Apr 2024 06:06:26 +0330 Subject: [PATCH] add webservice label to metrics (#49) * add webservice label to metrics * remove webservice label from request latency --- pkg/auth/metrics.go | 13 +++++++++++-- pkg/auth/server.go | 7 +++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/pkg/auth/metrics.go b/pkg/auth/metrics.go index 10c8d74..607da3a 100644 --- a/pkg/auth/metrics.go +++ b/pkg/auth/metrics.go @@ -13,6 +13,7 @@ const ( HasUpstreamAuth = "upstream_auth_enabled" ObjectKindLabel = "kind" WithDownstreamDeadlineLabel = "with_downstream_deadline" + WebserviceLabel = "webservice" MetricsKindSecret = "secret" MetricsKindWebservice = "webservice" @@ -33,7 +34,7 @@ var ( Name: "check_request_count", Help: "CheckRequest count", }, - []string{CerberusReasonLabel, CheckRequestVersionLabel, HasUpstreamAuth}, + []string{CerberusReasonLabel, CheckRequestVersionLabel, HasUpstreamAuth, WebserviceLabel}, ) reqLatency = prometheus.NewHistogramVec( @@ -128,7 +129,7 @@ var ( Name: "upstream_auth_failed_requests_total", Help: "Total number of failed UpstreamAuth requests", }, - []string{"with_downstream_deadline"}, + []string{WithDownstreamDeadlineLabel}, ) ) @@ -193,3 +194,11 @@ func AddWithDownstreamDeadlineLabel(labels prometheus.Labels, hasDeadline bool) } return labels } + +func AddWebserviceLabel(labels prometheus.Labels, wsvc string) prometheus.Labels { + if labels == nil { + labels = prometheus.Labels{} + } + labels[WebserviceLabel] = wsvc + return labels +} \ No newline at end of file diff --git a/pkg/auth/server.go b/pkg/auth/server.go index 574f052..e5e6f40 100644 --- a/pkg/auth/server.go +++ b/pkg/auth/server.go @@ -48,8 +48,10 @@ func (a *authV2) Check(ctx context.Context, check *CheckRequestV2) (*CheckRespon labels := AddReasonLabel(nil, reason) labels = AddUpstreamAuthLabel(labels, request.Context[HasUpstreamAuth]) labels[CheckRequestVersionLabel] = MetricsCheckRequestVersion2 - reqCount.With(labels).Inc() reqLatency.With(labels).Observe(time.Since(reqStartTime).Seconds()) + labels = AddWebserviceLabel(labels, string(CerberusHeaderWebservice)) + reqCount.With(labels).Inc() + return final_response, nil } @@ -74,8 +76,9 @@ func (a *authV3) Check(ctx context.Context, check *CheckRequestV3) (*CheckRespon labels := AddReasonLabel(nil, reason) labels = AddUpstreamAuthLabel(labels, request.Context[HasUpstreamAuth]) labels[CheckRequestVersionLabel] = MetricsCheckRequestVersion3 - reqCount.With(labels).Inc() reqLatency.With(labels).Observe(time.Since(reqStartTime).Seconds()) + labels = AddWebserviceLabel(labels, string(CerberusHeaderWebservice)) + reqCount.With(labels).Inc() return final_response, nil }