You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by rd...@apache.org on 2018/11/08 00:26:25 UTC

[pulsar] branch master updated: Fix zk latency metrics collector (#2916)

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 <rd...@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;