From 02db4da512c817ea01afc44f906b55244d3d4725 Mon Sep 17 00:00:00 2001 From: Ashish Pandey Date: Wed, 4 Dec 2024 15:19:40 +0800 Subject: [PATCH] fix for tokenProviderCheck tokenProviderCheck currently does not do anything and never fails. This change tries to fix that by separating provider nil check from the token check Signed-off-by: Ashish Pandey --- src/handler/handler.go | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/src/handler/handler.go b/src/handler/handler.go index e783b75..9fdb73b 100644 --- a/src/handler/handler.go +++ b/src/handler/handler.go @@ -158,25 +158,27 @@ func (handler *Handler) ReadinessCheck(w http.ResponseWriter, r *http.Request) { // If token provider is not instantiated, cannot fetch token, so fail request func (handler *Handler) checkTokenProvider(ctx context.Context) error { if handler.tokenProvider == nil { - token, err := handler.tokenProvider.GetAccessToken() - if len(token) == 0 || err != nil { - // Start tracing - _, span := otel.Tracer(constants.SERVICE_TELEMETRY_KEY).Start(ctx, "checkTokenProvider") - defer span.End() - - // If we run into a case where we received empty token without any errors - if err == nil { - err = errors.New("handler, tokenProvider is not instantiated, cannot forward request") - } + return errors.New("handler, tokenProvider is not instantiated, cannot forward request") + } + + token, err := handler.tokenProvider.GetAccessToken() + if len(token) == 0 || err != nil { + // Start tracing + _, span := otel.Tracer(constants.SERVICE_TELEMETRY_KEY).Start(ctx, "checkTokenProvider") + defer span.End() + + // If we run into a case where we received empty token without any errors + if err == nil { + err = errors.New("handler, empty token found, cannot forward request") + } - span.SetAttributes(attribute.Int("proxy.status_code", http.StatusServiceUnavailable)) - span.RecordError(err) - span.SetStatus(codes.Error, "failed to forward request") + span.SetAttributes(attribute.Int("proxy.status_code", http.StatusServiceUnavailable)) + span.RecordError(err) + span.SetStatus(codes.Error, "failed to forward request") - log.Errorln("failed to forward request", err) + log.Errorln("failed to forward request", err) - return err - } + return err } return nil