From a7c28fe5eda5f08b59a26e77dfb0cd19afb7e951 Mon Sep 17 00:00:00 2001 From: Chris Eager Date: Fri, 23 Feb 2024 11:58:47 -0600 Subject: [PATCH] Rename "name" tags to be more distinguishing --- .../limits/CardinalityEstimator.java | 2 +- .../limits/StaticRateLimiter.java | 2 +- .../metrics/BufferPoolGauges.java | 7 +++---- .../metrics/GarbageCollectionGauges.java | 7 +++---- .../redis/FaultTolerantPubSubConnection.java | 2 +- .../textsecuregcm/util/CircuitBreakerUtil.java | 18 +++++++++--------- 6 files changed, 18 insertions(+), 20 deletions(-) diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/limits/CardinalityEstimator.java b/service/src/main/java/org/whispersystems/textsecuregcm/limits/CardinalityEstimator.java index 40c62dc5d..2f8f55dc7 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/limits/CardinalityEstimator.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/limits/CardinalityEstimator.java @@ -31,7 +31,7 @@ public class CardinalityEstimator { this.period = period; Metrics.gauge( MetricsUtil.name(getClass(), "unique"), - Tags.of("name", name), + Tags.of("metricName", name), this, obj -> obj.uniqueElementCount); } diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/limits/StaticRateLimiter.java b/service/src/main/java/org/whispersystems/textsecuregcm/limits/StaticRateLimiter.java index 5d3560ead..6fc72bfb7 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/limits/StaticRateLimiter.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/limits/StaticRateLimiter.java @@ -53,7 +53,7 @@ public class StaticRateLimiter implements RateLimiter { this.validateScript = requireNonNull(validateScript); this.cacheCluster = requireNonNull(cacheCluster); this.clock = requireNonNull(clock); - this.counter = Metrics.counter(MetricsUtil.name(getClass(), "exceeded"), "name", name); + this.counter = Metrics.counter(MetricsUtil.name(getClass(), "exceeded"), "rateLimiterName", name); this.dynamicConfigurationManager = dynamicConfigurationManager; } diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/metrics/BufferPoolGauges.java b/service/src/main/java/org/whispersystems/textsecuregcm/metrics/BufferPoolGauges.java index 4f6ea36ff..1bb133348 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/metrics/BufferPoolGauges.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/metrics/BufferPoolGauges.java @@ -5,22 +5,21 @@ package org.whispersystems.textsecuregcm.metrics; +import static com.codahale.metrics.MetricRegistry.name; + import io.micrometer.core.instrument.Metrics; import io.micrometer.core.instrument.Tag; - import java.lang.management.BufferPoolMXBean; import java.lang.management.ManagementFactory; import java.util.List; -import static com.codahale.metrics.MetricRegistry.name; - public class BufferPoolGauges { private BufferPoolGauges() {} public static void registerMetrics() { for (final BufferPoolMXBean bufferPoolMXBean : ManagementFactory.getPlatformMXBeans(BufferPoolMXBean.class)) { - final List tags = List.of(Tag.of("name", bufferPoolMXBean.getName())); + final List tags = List.of(Tag.of("bufferPoolName", bufferPoolMXBean.getName())); Metrics.gauge(name(BufferPoolGauges.class, "count"), tags, bufferPoolMXBean, BufferPoolMXBean::getCount); Metrics.gauge(name(BufferPoolGauges.class, "memory_used"), tags, bufferPoolMXBean, BufferPoolMXBean::getMemoryUsed); diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/metrics/GarbageCollectionGauges.java b/service/src/main/java/org/whispersystems/textsecuregcm/metrics/GarbageCollectionGauges.java index 5eca2d5fd..6c8107927 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/metrics/GarbageCollectionGauges.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/metrics/GarbageCollectionGauges.java @@ -5,22 +5,21 @@ package org.whispersystems.textsecuregcm.metrics; +import static com.codahale.metrics.MetricRegistry.name; + import io.micrometer.core.instrument.Metrics; import io.micrometer.core.instrument.Tag; - import java.lang.management.GarbageCollectorMXBean; import java.lang.management.ManagementFactory; import java.util.List; -import static com.codahale.metrics.MetricRegistry.name; - public class GarbageCollectionGauges { private GarbageCollectionGauges() {} public static void registerMetrics() { for (final GarbageCollectorMXBean garbageCollectorMXBean : ManagementFactory.getGarbageCollectorMXBeans()) { - final List tags = List.of(Tag.of("name", garbageCollectorMXBean.getName())); + final List tags = List.of(Tag.of("memoryManagerName", garbageCollectorMXBean.getName())); Metrics.gauge(name(GarbageCollectionGauges.class, "collection_count"), tags, garbageCollectorMXBean, GarbageCollectorMXBean::getCollectionCount); Metrics.gauge(name(GarbageCollectionGauges.class, "collection_time"), tags, garbageCollectorMXBean, GarbageCollectorMXBean::getCollectionTime); diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/redis/FaultTolerantPubSubConnection.java b/service/src/main/java/org/whispersystems/textsecuregcm/redis/FaultTolerantPubSubConnection.java index c620758fb..7660b8042 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/redis/FaultTolerantPubSubConnection.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/redis/FaultTolerantPubSubConnection.java @@ -48,7 +48,7 @@ public class FaultTolerantPubSubConnection { this.pubSubConnection.setNodeMessagePropagation(true); - this.executeTimer = Metrics.timer(name(getClass(), "execute"), "name", name + "-pubsub"); + this.executeTimer = Metrics.timer(name(getClass(), "execute"), "clusterName", name + "-pubsub"); CircuitBreakerUtil.registerMetrics(circuitBreaker, FaultTolerantPubSubConnection.class); } diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java b/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java index 06cbc731a..99fb0dc8e 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java @@ -20,22 +20,22 @@ public class CircuitBreakerUtil { private static final String CIRCUIT_BREAKER_STATE_GAUGE_NAME = name(CircuitBreakerUtil.class, "breaker", "state"); private static final String RETRY_CALL_COUNTER_NAME = name(CircuitBreakerUtil.class, "retry", "call"); - private static final String NAME_TAG_NAME = "name"; + private static final String BREAKER_NAME_TAG_NAME = "breakerName"; private static final String OUTCOME_TAG_NAME = "outcome"; public static void registerMetrics(CircuitBreaker circuitBreaker, Class clazz) { final String breakerName = clazz.getSimpleName() + "/" + circuitBreaker.getName(); final Counter successCounter = Metrics.counter(CIRCUIT_BREAKER_CALL_COUNTER_NAME, - NAME_TAG_NAME, breakerName, + BREAKER_NAME_TAG_NAME, breakerName, OUTCOME_TAG_NAME, "success"); final Counter failureCounter = Metrics.counter(CIRCUIT_BREAKER_CALL_COUNTER_NAME, - NAME_TAG_NAME, breakerName, + BREAKER_NAME_TAG_NAME, breakerName, OUTCOME_TAG_NAME, "failure"); final Counter unpermittedCounter = Metrics.counter(CIRCUIT_BREAKER_CALL_COUNTER_NAME, - NAME_TAG_NAME, breakerName, + BREAKER_NAME_TAG_NAME, breakerName, OUTCOME_TAG_NAME, "unpermitted"); circuitBreaker.getEventPublisher().onSuccess(event -> { @@ -51,7 +51,7 @@ public class CircuitBreakerUtil { }); Metrics.gauge(CIRCUIT_BREAKER_STATE_GAUGE_NAME, - Tags.of(Tag.of(NAME_TAG_NAME, circuitBreaker.getName())), + Tags.of(Tag.of(BREAKER_NAME_TAG_NAME, circuitBreaker.getName())), circuitBreaker, breaker -> breaker.getState().getOrder()); } @@ -59,19 +59,19 @@ public class CircuitBreakerUtil { final String retryName = clazz.getSimpleName() + "/" + retry.getName(); final Counter successCounter = Metrics.counter(RETRY_CALL_COUNTER_NAME, - NAME_TAG_NAME, retryName, + BREAKER_NAME_TAG_NAME, retryName, OUTCOME_TAG_NAME, "success"); final Counter retryCounter = Metrics.counter(RETRY_CALL_COUNTER_NAME, - NAME_TAG_NAME, retryName, + BREAKER_NAME_TAG_NAME, retryName, OUTCOME_TAG_NAME, "retry"); final Counter errorCounter = Metrics.counter(RETRY_CALL_COUNTER_NAME, - NAME_TAG_NAME, retryName, + BREAKER_NAME_TAG_NAME, retryName, OUTCOME_TAG_NAME, "error"); final Counter ignoredErrorCounter = Metrics.counter(RETRY_CALL_COUNTER_NAME, - NAME_TAG_NAME, retryName, + BREAKER_NAME_TAG_NAME, retryName, OUTCOME_TAG_NAME, "ignored_error"); retry.getEventPublisher().onSuccess(event -> {