From 8142aef64d8cff9bf554891b89526adb9f57f3d0 Mon Sep 17 00:00:00 2001 From: Andres Martinez Gotor Date: Mon, 10 Mar 2025 17:09:11 +0100 Subject: [PATCH] Advisor: Avoid evaluating a check for another namespace (#101885) --- apps/advisor/pkg/app/app.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/apps/advisor/pkg/app/app.go b/apps/advisor/pkg/app/app.go index a640682b0fc..efa9188f8e5 100644 --- a/apps/advisor/pkg/app/app.go +++ b/apps/advisor/pkg/app/app.go @@ -13,6 +13,7 @@ import ( "github.com/grafana/grafana/apps/advisor/pkg/app/checks" "github.com/grafana/grafana/apps/advisor/pkg/app/checkscheduler" "github.com/grafana/grafana/apps/advisor/pkg/app/checktyperegisterer" + "github.com/grafana/grafana/pkg/infra/log" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/klog/v2" ) @@ -24,6 +25,12 @@ func New(cfg app.Config) (app.App, error) { return nil, fmt.Errorf("invalid config type") } checkRegistry := specificConfig.CheckRegistry + stackID := specificConfig.StackID + namespace, err := checks.GetNamespace(stackID) + if err != nil { + return nil, err + } + log := log.New("advisor.app") // Prepare storage client clientGenerator := k8s.NewClientRegistry(cfg.KubeConfig, k8s.ClientConfig{}) @@ -60,6 +67,13 @@ func New(cfg app.Config) (app.App, error) { }, Watcher: &simple.Watcher{ AddFunc: func(ctx context.Context, obj resource.Object) error { + log.Debug("Adding check", "namespace", obj.GetNamespace()) + if obj.GetNamespace() != namespace { + log.Debug("Skipping check in namespace", "namespace", obj.GetNamespace()) + return nil + } else { + log.Debug("Processing check in namespace", "namespace", obj.GetNamespace()) + } check, err := getCheck(obj, checkMap) if err != nil { return err