diff --git a/grpc-adapter/src/main/java/de/cotto/lndmanagej/grpc/GrpcBase.java b/grpc-adapter/src/main/java/de/cotto/lndmanagej/grpc/GrpcBase.java index 9222d845..d3d17f68 100644 --- a/grpc-adapter/src/main/java/de/cotto/lndmanagej/grpc/GrpcBase.java +++ b/grpc-adapter/src/main/java/de/cotto/lndmanagej/grpc/GrpcBase.java @@ -35,7 +35,7 @@ public class GrpcBase { Optional get(String name, Supplier supplier) { try { - return Optional.ofNullable(metrics.timer(name).timeSupplier(supplier)); + return Optional.ofNullable(metrics.timer(getClass(), name).timeSupplier(supplier)); } catch (StatusRuntimeException exception) { logger.warn("Exception while connecting to lnd: ", exception); return Optional.empty(); diff --git a/grpc-adapter/src/test/java/de/cotto/lndmanagej/grpc/GrpcBaseTest.java b/grpc-adapter/src/test/java/de/cotto/lndmanagej/grpc/GrpcBaseTest.java index b5d1f4f3..4e7e80c2 100644 --- a/grpc-adapter/src/test/java/de/cotto/lndmanagej/grpc/GrpcBaseTest.java +++ b/grpc-adapter/src/test/java/de/cotto/lndmanagej/grpc/GrpcBaseTest.java @@ -33,7 +33,7 @@ class GrpcBaseTest { void setUp() { Timer timer = mock(Timer.class); lenient().when(timer.timeSupplier(any())).then(invocation -> ((Supplier) invocation.getArgument(0)).get()); - lenient().when(metrics.timer(anyString())).thenReturn(timer); + lenient().when(metrics.timer(any(), anyString())).thenReturn(timer); } @Test @@ -44,7 +44,7 @@ class GrpcBaseTest { @Test void get_uses_timer() { grpcBase.get("name", () -> "x"); - verify(metrics).timer("name"); + verify(metrics).timer(grpcBase.getClass(), "name"); } @Test diff --git a/metrics/src/main/java/de/cotto/lndmanagej/metrics/Metrics.java b/metrics/src/main/java/de/cotto/lndmanagej/metrics/Metrics.java index e92ef193..944d9b9a 100644 --- a/metrics/src/main/java/de/cotto/lndmanagej/metrics/Metrics.java +++ b/metrics/src/main/java/de/cotto/lndmanagej/metrics/Metrics.java @@ -37,7 +37,7 @@ public class Metrics { meters.computeIfAbsent(name, registry::meter).mark(); } - public Timer timer(String name) { - return timers.computeIfAbsent(name, registry::timer); + public Timer timer(Class callingClass, String name) { + return timers.computeIfAbsent(MetricRegistry.name(callingClass, name), registry::timer); } } diff --git a/metrics/src/test/java/de/cotto/lndmanagej/metrics/MetricsTest.java b/metrics/src/test/java/de/cotto/lndmanagej/metrics/MetricsTest.java index 4b8068fc..34e61794 100644 --- a/metrics/src/test/java/de/cotto/lndmanagej/metrics/MetricsTest.java +++ b/metrics/src/test/java/de/cotto/lndmanagej/metrics/MetricsTest.java @@ -17,8 +17,8 @@ class MetricsTest { @Test void timer() { String name = "timer.name"; - metrics.timer(name).time(this::sleep); - assertThat(metrics.timer(name).getCount()).isEqualTo(1); + metrics.timer(String.class, name).time(this::sleep); + assertThat(metrics.timer(String.class, name).getCount()).isEqualTo(1); } @Test