Skip to content

Commit 13c1da4

Browse files
committed
4.x: Remove unused code from io.helidon.metrics.providers.micrometer.MMeterRegistry
1 parent c2ab7e2 commit 13c1da4

File tree

1 file changed

+1
-125
lines changed
  • metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer

1 file changed

+1
-125
lines changed

metrics/providers/micrometer/src/main/java/io/helidon/metrics/providers/micrometer/MMeterRegistry.java

Lines changed: 1 addition & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023, 2024 Oracle and/or its affiliates.
2+
* Copyright (c) 2023, 2025 Oracle and/or its affiliates.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -46,9 +46,7 @@
4646
import io.micrometer.core.instrument.Meter;
4747
import io.micrometer.core.instrument.MeterRegistry;
4848
import io.micrometer.core.instrument.Timer;
49-
import io.micrometer.core.instrument.composite.CompositeMeterRegistry;
5049
import io.micrometer.core.instrument.search.Search;
51-
import io.micrometer.prometheus.PrometheusMeterRegistry;
5250

5351
/**
5452
* Implementation of {@link io.helidon.metrics.api.MeterRegistry} for the Micrometer adapter.
@@ -127,88 +125,6 @@ static Builder builder(
127125
return new Builder(delegate, metricsFactory);
128126
}
129127

130-
/**
131-
* Creates a new meter registry which wraps an newly-created Micrometer
132-
* {@link io.micrometer.core.instrument.composite.CompositeMeterRegistry} with a Prometheus meter registry
133-
* automatically added, using the specified clock.
134-
*
135-
* @param metricsFactory metrics factory the new meter registry should use in creating and registering meters
136-
* @param clock default clock to associate with the new meter registry
137-
* @param metersProviders providers of built-in meters to be registered upon creation of the meter registry
138-
* @return new wrapper around a new Micrometer composite meter registry
139-
*/
140-
static MMeterRegistry create(MicrometerMetricsFactory metricsFactory,
141-
Clock clock,
142-
Collection<MetersProvider> metersProviders) {
143-
CompositeMeterRegistry delegate = new CompositeMeterRegistry(ClockWrapper.create(clock));
144-
// The specified clock is already a Helidon one so pass it directly; no need to wrap it.
145-
return create(delegate,
146-
metricsFactory,
147-
metricsFactory.metricsConfig(),
148-
clock,
149-
metersProviders);
150-
}
151-
152-
static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate,
153-
MicrometerMetricsFactory metricsFactory,
154-
MetricsConfig metricsConfig,
155-
Collection<MetersProvider> metersProviders) {
156-
157-
return create(delegate, metricsFactory, metricsConfig, MClock.create(delegate.config().clock()), metersProviders);
158-
}
159-
160-
static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate,
161-
MicrometerMetricsFactory metricsFactory,
162-
MetricsConfig metricsConfig,
163-
Collection<MetersProvider> metersProviders,
164-
Consumer<io.helidon.metrics.api.Meter> onAddListener,
165-
Consumer<io.helidon.metrics.api.Meter> onRemoveListener) {
166-
MMeterRegistry result = create(delegate, metricsFactory, metricsConfig, MClock.create(delegate.config().clock()));
167-
result.onMeterAdded(onAddListener)
168-
.onMeterRemoved(onRemoveListener);
169-
return applyMetersProvidersToRegistry(metricsFactory, result, metersProviders);
170-
}
171-
172-
static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate,
173-
MicrometerMetricsFactory metricsFactory,
174-
MetricsConfig metricsConfig,
175-
Clock clock,
176-
Collection<MetersProvider> metersProviders) {
177-
178-
return applyMetersProvidersToRegistry(metricsFactory,
179-
create(delegate,
180-
metricsFactory,
181-
metricsConfig,
182-
clock),
183-
metersProviders);
184-
}
185-
186-
static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate,
187-
MicrometerMetricsFactory metricsFactory,
188-
MetricsConfig metricsConfig,
189-
Clock clock) {
190-
191-
io.micrometer.core.instrument.MeterRegistry preppedDelegate =
192-
ensurePrometheusRegistryIsPresent(delegate,
193-
metricsFactory.metricsConfig());
194-
195-
return new MMeterRegistry(preppedDelegate,
196-
metricsFactory,
197-
metricsConfig,
198-
clock);
199-
}
200-
201-
static MMeterRegistry create(io.micrometer.core.instrument.MeterRegistry delegate,
202-
MicrometerMetricsFactory metricsFactory,
203-
Collection<MetersProvider> metersProviders) {
204-
205-
return create(delegate,
206-
metricsFactory,
207-
metricsFactory.metricsConfig(),
208-
MClock.create(delegate.config().clock()),
209-
metersProviders);
210-
}
211-
212128
static MMeterRegistry applyMetersProvidersToRegistry(MetricsFactory factory,
213129
MMeterRegistry registry,
214130
Collection<MetersProvider> metersProviders) {
@@ -589,21 +505,6 @@ HM extends MMeter<M>> MMeter<M> meterIfRegistered(MMeter.Builder<?, M, HB, HM> m
589505
return null;
590506
}
591507

592-
private static io.micrometer.core.instrument.MeterRegistry ensurePrometheusRegistryIsPresent(
593-
io.micrometer.core.instrument.MeterRegistry meterRegistry,
594-
MetricsConfig metricsConfig) {
595-
596-
if (meterRegistry instanceof CompositeMeterRegistry compositeMeterRegistry) {
597-
if (compositeMeterRegistry.getRegistries()
598-
.stream()
599-
.noneMatch(r -> r instanceof PrometheusMeterRegistry)) {
600-
compositeMeterRegistry.add(
601-
new PrometheusMeterRegistry(key -> metricsConfig.lookupConfig(key).orElse(null)));
602-
}
603-
}
604-
return meterRegistry;
605-
}
606-
607508
private <M extends Meter,
608509
HB extends MMeter.Builder<?, M, HB, HM>,
609510
HM extends MMeter<M>> io.helidon.metrics.api.Meter getOrCreate(HB mBuilder,
@@ -895,29 +796,4 @@ public R build() {
895796
}
896797
}
897798

898-
/**
899-
* Micrometer-friendly wrapper around a Helidon clock.
900-
*/
901-
private static class ClockWrapper implements io.micrometer.core.instrument.Clock {
902-
903-
private final Clock neutralClock;
904-
905-
private ClockWrapper(Clock neutralClock) {
906-
this.neutralClock = neutralClock;
907-
}
908-
909-
static ClockWrapper create(Clock clock) {
910-
return new ClockWrapper(clock);
911-
}
912-
913-
@Override
914-
public long wallTime() {
915-
return neutralClock.wallTime();
916-
}
917-
918-
@Override
919-
public long monotonicTime() {
920-
return neutralClock.monotonicTime();
921-
}
922-
}
923799
}

0 commit comments

Comments
 (0)