From 2187385ed249e60b7061ebc6624d1f1a948571a0 Mon Sep 17 00:00:00 2001 From: Leo Lei Date: Fri, 24 Sep 2021 18:42:24 +0800 Subject: [PATCH] Fix external metrics provider not respecting metrics-max-age --- cmd/adapter/adapter.go | 2 +- pkg/external-provider/provider.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmd/adapter/adapter.go b/cmd/adapter/adapter.go index 7a38dc5e..0169f40a 100644 --- a/cmd/adapter/adapter.go +++ b/cmd/adapter/adapter.go @@ -211,7 +211,7 @@ func (cmd *PrometheusAdapter) makeExternalProvider(promClient prom.Client, stopC } // construct the provider and start it - emProvider, runner := extprov.NewExternalPrometheusProvider(promClient, namers, cmd.MetricsRelistInterval) + emProvider, runner := extprov.NewExternalPrometheusProvider(promClient, namers, cmd.MetricsRelistInterval, cmd.MetricsMaxAge) runner.RunUntil(stopCh) return emProvider, nil diff --git a/pkg/external-provider/provider.go b/pkg/external-provider/provider.go index 23cf07f5..cdb6c834 100644 --- a/pkg/external-provider/provider.go +++ b/pkg/external-provider/provider.go @@ -77,9 +77,9 @@ func (p *externalPrometheusProvider) selectGroupResource(namespace string) schem } // NewExternalPrometheusProvider creates an ExternalMetricsProvider capable of responding to Kubernetes requests for external metric data -func NewExternalPrometheusProvider(promClient prom.Client, namers []naming.MetricNamer, updateInterval time.Duration) (provider.ExternalMetricsProvider, Runnable) { +func NewExternalPrometheusProvider(promClient prom.Client, namers []naming.MetricNamer, updateInterval time.Duration, maxAge time.Duration) (provider.ExternalMetricsProvider, Runnable) { metricConverter := NewMetricConverter() - basicLister := NewBasicMetricLister(promClient, namers, updateInterval) + basicLister := NewBasicMetricLister(promClient, namers, maxAge) periodicLister, _ := NewPeriodicMetricLister(basicLister, updateInterval) seriesRegistry := NewExternalSeriesRegistry(periodicLister) return &externalPrometheusProvider{