From 3c6b418ca8402c2117385c20a8cbf2084725493a Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Thu, 30 May 2019 11:05:05 -0700 Subject: [PATCH] Publish fcm retry metrics --- .../src/main/java/org/whispersystems/gcm/server/Sender.java | 4 ++++ gcm-sender-async/src/test/resources/logback-test.xml | 6 ++++++ .../org/whispersystems/textsecuregcm/push/GCMSender.java | 3 +++ .../textsecuregcm/util/CircuitBreakerUtil.java | 1 - 4 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 gcm-sender-async/src/test/resources/logback-test.xml diff --git a/gcm-sender-async/src/main/java/org/whispersystems/gcm/server/Sender.java b/gcm-sender-async/src/main/java/org/whispersystems/gcm/server/Sender.java index 06aad217..5394f525 100644 --- a/gcm-sender-async/src/main/java/org/whispersystems/gcm/server/Sender.java +++ b/gcm-sender-async/src/main/java/org/whispersystems/gcm/server/Sender.java @@ -151,4 +151,8 @@ public class Sender { } } + public Retry getRetry() { + return retry; + } + } \ No newline at end of file diff --git a/gcm-sender-async/src/test/resources/logback-test.xml b/gcm-sender-async/src/test/resources/logback-test.xml new file mode 100644 index 00000000..ecd9eb54 --- /dev/null +++ b/gcm-sender-async/src/test/resources/logback-test.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/push/GCMSender.java b/service/src/main/java/org/whispersystems/textsecuregcm/push/GCMSender.java index 76f1767b..744f1d00 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/push/GCMSender.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/push/GCMSender.java @@ -12,6 +12,7 @@ import org.whispersystems.gcm.server.Sender; import org.whispersystems.textsecuregcm.storage.Account; import org.whispersystems.textsecuregcm.storage.AccountsManager; import org.whispersystems.textsecuregcm.storage.Device; +import org.whispersystems.textsecuregcm.util.CircuitBreakerUtil; import org.whispersystems.textsecuregcm.util.Constants; import org.whispersystems.textsecuregcm.util.SystemMapper; import org.whispersystems.textsecuregcm.util.Util; @@ -49,6 +50,8 @@ public class GCMSender implements Managed { public GCMSender(AccountsManager accountsManager, String signalKey) { this.accountsManager = accountsManager; this.signalSender = new Sender(signalKey, SystemMapper.getMapper(), 6); + + CircuitBreakerUtil.registerMetrics(metricRegistry, signalSender.getRetry(), Sender.class); } @VisibleForTesting 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 8ab36c70..9b6bb817 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/util/CircuitBreakerUtil.java @@ -5,7 +5,6 @@ import com.codahale.metrics.MetricRegistry; import static com.codahale.metrics.MetricRegistry.name; import io.github.resilience4j.circuitbreaker.CircuitBreaker; -import io.github.resilience4j.retry.AsyncRetry; import io.github.resilience4j.retry.Retry; public class CircuitBreakerUtil {