diff --git a/service/pom.xml b/service/pom.xml
index 496fd8252..520518af7 100644
--- a/service/pom.xml
+++ b/service/pom.xml
@@ -296,6 +296,10 @@
io.github.resilience4j
resilience4j-reactor
+
+ io.github.resilience4j
+ resilience4j-micrometer
+
io.grpc
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 ccf8135d3..cfa995694 100644
--- a/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java
+++ b/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java
@@ -9,6 +9,8 @@ import static com.codahale.metrics.MetricRegistry.name;
import io.github.resilience4j.circuitbreaker.CircuitBreaker;
import io.github.resilience4j.circuitbreaker.CircuitBreakerRegistry;
+import io.github.resilience4j.micrometer.tagged.TaggedCircuitBreakerMetrics;
+import io.github.resilience4j.micrometer.tagged.TaggedRetryMetrics;
import io.github.resilience4j.retry.Retry;
import io.github.resilience4j.retry.RetryRegistry;
import io.lettuce.core.RedisCommandTimeoutException;
@@ -41,6 +43,12 @@ public class CircuitBreakerUtil {
static {
setGeneralRedisRetryConfiguration(new RetryConfiguration());
+
+ TaggedCircuitBreakerMetrics.ofCircuitBreakerRegistry(CIRCUIT_BREAKER_REGISTRY)
+ .bindTo(Metrics.globalRegistry);
+
+ TaggedRetryMetrics.ofRetryRegistry(RETRY_REGISTRY)
+ .bindTo(Metrics.globalRegistry);
}
public static CircuitBreakerRegistry getCircuitBreakerRegistry() {