This is an automated email from the ASF dual-hosted git repository.

rdhabalia pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 7756231  Fix zk latency metrics collector (#2916)
7756231 is described below

commit 7756231afe18d6d2389a79e9a6d1f96b9a4085b7
Author: Rajan Dhabalia <rdhaba...@apache.org>
AuthorDate: Wed Nov 7 16:26:20 2018 -0800

    Fix zk latency metrics collector (#2916)
---
 .../pulsar/broker/zookeeper/aspectj/ClientCnxnAspect.java     | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/zookeeper/aspectj/ClientCnxnAspect.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/zookeeper/aspectj/ClientCnxnAspect.java
index ca78018..33bd11c 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/zookeeper/aspectj/ClientCnxnAspect.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/zookeeper/aspectj/ClientCnxnAspect.java
@@ -21,6 +21,7 @@ package org.apache.pulsar.broker.zookeeper.aspectj;
 import java.lang.reflect.Field;
 import java.util.List;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.TimeUnit;
 
 import com.google.common.collect.Lists;
 import org.apache.bookkeeper.util.MathUtils;
@@ -83,16 +84,16 @@ public class ClientCnxnAspect {
     }
 
     private void processEvent(ProceedingJoinPoint joinPoint) {
-        long startTimeMs = getStartTime(joinPoint.getArgs()[0]);
-        if (startTimeMs == -1) {
+        long startTimeNano = getStartTime(joinPoint.getArgs()[0]);
+        if (startTimeNano == -1) {
             // couldn't find start time
             return;
         }
         Record request = getEventType(joinPoint.getArgs()[0]);
 
         if (request != null) {
-            long timeElapsed = (MathUtils.now() - startTimeMs);
-            notifyListeners(checkType(request), timeElapsed);
+            long timeElapsed = (MathUtils.nowInNano() - startTimeNano);
+            notifyListeners(checkType(request), 
TimeUnit.NANOSECONDS.toMicros(timeElapsed));
         }
     }
 
@@ -156,7 +157,7 @@ public class ClientCnxnAspect {
                 if (zooworker != null
                         && 
zooworker.getClass().getName().equals("org.apache.bookkeeper.zookeeper.ZooWorker"))
 {
                     Field timeField = 
Class.forName("org.apache.bookkeeper.zookeeper.ZooWorker")
-                            .getDeclaredField("startTimeMs");
+                            .getDeclaredField("startTimeNanos");
                     timeField.setAccessible(true);
                     long startTime = (long) timeField.get(zooworker);
                     return startTime;

Reply via email to