diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/websocket/DeadLetterHandler.java b/service/src/main/java/org/whispersystems/textsecuregcm/websocket/DeadLetterHandler.java index a82f0e583..0151fea18 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/websocket/DeadLetterHandler.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/websocket/DeadLetterHandler.java @@ -1,6 +1,8 @@ package org.whispersystems.textsecuregcm.websocket; import com.google.protobuf.InvalidProtocolBufferException; +import io.micrometer.core.instrument.Counter; +import io.micrometer.core.instrument.Metrics; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.whispersystems.dispatch.DispatchChannel; @@ -8,12 +10,16 @@ import org.whispersystems.textsecuregcm.entities.MessageProtos.Envelope; import org.whispersystems.textsecuregcm.storage.MessagesManager; import org.whispersystems.textsecuregcm.storage.PubSubProtos.PubSubMessage; +import static com.codahale.metrics.MetricRegistry.name; + public class DeadLetterHandler implements DispatchChannel { private final Logger logger = LoggerFactory.getLogger(DeadLetterHandler.class); private final MessagesManager messagesManager; + private final Counter deadLetterCounter = Metrics.counter(name(getClass(), "deadLetterCounter")); + public DeadLetterHandler(MessagesManager messagesManager) { this.messagesManager = messagesManager; } @@ -22,6 +28,7 @@ public class DeadLetterHandler implements DispatchChannel { public void onDispatchMessage(String channel, byte[] data) { try { logger.info("Handling dead letter to: " + channel); + deadLetterCounter.increment(); WebsocketAddress address = new WebsocketAddress(channel); PubSubMessage pubSubMessage = PubSubMessage.parseFrom(data);