Github user anmolnar commented on a diff in the pull request:
https://github.com/apache/zookeeper/pull/307#discussion_r191199674
--- Diff: src/java/main/org/apache/zookeeper/server/ServerStats.java ---
@@ -21,17 +21,33 @@
import org.apache.zookeeper.common.Time;
+import org.apache.zookeeper.server.quorum.QuorumPeerConfig;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.Timer;
+import java.util.TimerTask;
+import java.util.concurrent.atomic.AtomicReference;
/**
* Basic Server Statistics
*/
public class ServerStats {
+ private static final Logger LOG =
LoggerFactory.getLogger(ServerStats.class);
+
private long packetsSent;
private long packetsReceived;
private long maxLatency;
private long minLatency = Long.MAX_VALUE;
private long totalLatency = 0;
private long count = 0;
+ private long numRequestsAboveThresholdTime = 0;
+
+ final static long requestWarnThresholdMs =
QuorumPeerConfig.getRequestWarnResponseThresholdMs();
+ final static Timer timer = new Timer();
--- End diff --
Have you considered using `ScheduledExecutorService` instead?
https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.html
---