From 13c1da4c5240ff17f08b0aa1f5bcefa866b98c58 Mon Sep 17 00:00:00 2001 From: Andrei Arlou Date: Sat, 21 Jun 2025 06:42:45 +0300 Subject: [PATCH] 4.x: Remove unused code from io.helidon.metrics.providers.micrometer.MMeterRegistry --- .../providers/micrometer/MMeterRegistry.java | 126 +----------------- 1 file changed, 1 insertion(+), 125 deletions(-) diff --git a/metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer/MMeterRegistry.java b/metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer/MMeterRegistry.java index 201d4e5b3c8..62eefe1e251 100644 --- a/metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer/MMeterRegistry.java +++ b/metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer/MMeterRegistry.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, 2024 Oracle and/or its affiliates. + * Copyright (c) 2023, 2025 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -46,9 +46,7 @@ import io.micrometer.core.instrument.Meter; import io.micrometer.core.instrument.MeterRegistry; import io.micrometer.core.instrument.Timer; -import io.micrometer.core.instrument.composite.CompositeMeterRegistry; import io.micrometer.core.instrument.search.Search; -import io.micrometer.prometheus.PrometheusMeterRegistry; /** * Implementation of {@link io.helidon.metrics.api.MeterRegistry} for the Micrometer adapter. @@ -127,88 +125,6 @@ static Builder builder( return new Builder(delegate, metricsFactory); } - /** - * Creates a new meter registry which wraps an newly-created Micrometer - * {@link io.micrometer.core.instrument.composite.CompositeMeterRegistry} with a Prometheus meter registry - * automatically added, using the specified clock. - * - * @param metricsFactory metrics factory the new meter registry should use in creating and registering meters - * @param clock default clock to associate with the new meter registry - * @param metersProviders providers of built-in meters to be registered upon creation of the meter registry - * @return new wrapper around a new Micrometer composite meter registry - */ - static MMeterRegistry create(MicrometerMetricsFactory metricsFactory, - Clock clock, - Collection metersProviders) { - CompositeMeterRegistry delegate = new CompositeMeterRegistry(ClockWrapper.create(clock)); - // The specified clock is already a Helidon one so pass it directly; no need to wrap it. - return create(delegate, - metricsFactory, - metricsFactory.metricsConfig(), - clock, - metersProviders); - } - - static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate, - MicrometerMetricsFactory metricsFactory, - MetricsConfig metricsConfig, - Collection metersProviders) { - - return create(delegate, metricsFactory, metricsConfig, MClock.create(delegate.config().clock()), metersProviders); - } - - static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate, - MicrometerMetricsFactory metricsFactory, - MetricsConfig metricsConfig, - Collection metersProviders, - Consumer onAddListener, - Consumer onRemoveListener) { - MMeterRegistry result = create(delegate, metricsFactory, metricsConfig, MClock.create(delegate.config().clock())); - result.onMeterAdded(onAddListener) - .onMeterRemoved(onRemoveListener); - return applyMetersProvidersToRegistry(metricsFactory, result, metersProviders); - } - - static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate, - MicrometerMetricsFactory metricsFactory, - MetricsConfig metricsConfig, - Clock clock, - Collection metersProviders) { - - return applyMetersProvidersToRegistry(metricsFactory, - create(delegate, - metricsFactory, - metricsConfig, - clock), - metersProviders); - } - - static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate, - MicrometerMetricsFactory metricsFactory, - MetricsConfig metricsConfig, - Clock clock) { - - io.micrometer.core.instrument.MeterRegistry preppedDelegate = - ensurePrometheusRegistryIsPresent(delegate, - metricsFactory.metricsConfig()); - - return new MMeterRegistry(preppedDelegate, - metricsFactory, - metricsConfig, - clock); - } - - static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate, - MicrometerMetricsFactory metricsFactory, - Collection metersProviders) { - - return create(delegate, - metricsFactory, - metricsFactory.metricsConfig(), - MClock.create(delegate.config().clock()), - metersProviders); - } - static MMeterRegistry applyMetersProvidersToRegistry(MetricsFactory factory, MMeterRegistry registry, Collection metersProviders) { @@ -589,21 +505,6 @@ HM extends MMeter> MMeter meterIfRegistered(MMeter.Builder m return null; } - private static io.micrometer.core.instrument.MeterRegistry ensurePrometheusRegistryIsPresent( - io.micrometer.core.instrument.MeterRegistry meterRegistry, - MetricsConfig metricsConfig) { - - if (meterRegistry instanceof CompositeMeterRegistry compositeMeterRegistry) { - if (compositeMeterRegistry.getRegistries() - .stream() - .noneMatch(r -> r instanceof PrometheusMeterRegistry)) { - compositeMeterRegistry.add( - new PrometheusMeterRegistry(key -> metricsConfig.lookupConfig(key).orElse(null))); - } - } - return meterRegistry; - } - private , HM extends MMeter> io.helidon.metrics.api.Meter getOrCreate(HB mBuilder, @@ -895,29 +796,4 @@ public R build() { } } - /** - * Micrometer-friendly wrapper around a Helidon clock. - */ - private static class ClockWrapper implements io.micrometer.core.instrument.Clock { - - private final Clock neutralClock; - - private ClockWrapper(Clock neutralClock) { - this.neutralClock = neutralClock; - } - - static ClockWrapper create(Clock clock) { - return new ClockWrapper(clock); - } - - @Override - public long wallTime() { - return neutralClock.wallTime(); - } - - @Override - public long monotonicTime() { - return neutralClock.monotonicTime(); - } - } }