ensure sigar metrics are reusable - just a small protection for weird systems
diff --git a/geronimo-metrics-extensions/geronimo-metrics-extension-common/src/main/java/org/apache/geronimo/microprofile/metrics/extension/common/MicroprofileMetricsAdapter.java b/geronimo-metrics-extensions/geronimo-metrics-extension-common/src/main/java/org/apache/geronimo/microprofile/metrics/extension/common/MicroprofileMetricsAdapter.java
index f9259d8..986aa7a 100644
--- a/geronimo-metrics-extensions/geronimo-metrics-extension-common/src/main/java/org/apache/geronimo/microprofile/metrics/extension/common/MicroprofileMetricsAdapter.java
+++ b/geronimo-metrics-extensions/geronimo-metrics-extension-common/src/main/java/org/apache/geronimo/microprofile/metrics/extension/common/MicroprofileMetricsAdapter.java
@@ -32,9 +32,13 @@
}
public Consumer<Definition> registrer() {
- return def -> registry.register(
- new Metadata(def.getName(), def.getDisplayName(), def.getDescription(), GAUGE, def.getUnit()),
- (Gauge<Double>) () -> def.getEvaluator().getAsDouble());
+ return def -> {
+ final Metadata metadata = new Metadata(def.getName(), def.getDisplayName(), def.getDescription(), GAUGE,
+ def.getUnit());
+ metadata.setReusable(true);
+ registry.register(metadata,
+ (Gauge<Double>) () -> def.getEvaluator().getAsDouble());
+ };
}
public Consumer<Definition> unregistrer() {