You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by rm...@apache.org on 2015/11/11 23:16:04 UTC
svn commit: r1713939 - in /incubator/sirona/trunk:
agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java
api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java
Author: rmannibucau
Date: Wed Nov 11 22:16:03 2015
New Revision: 1713939
URL: http://svn.apache.org/viewvc?rev=1713939&view=rev
Log:
SIRONA-52 ensuring we offset properly nanotime
Modified:
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java
incubator/sirona/trunk/api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java?rev=1713939&r1=1713938&r2=1713939&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/tracking/PathTracker.java Wed Nov 11 22:16:03 2015
@@ -178,7 +178,6 @@ public class PathTracker
public void stop( final Object reference )
{
final long end = System.nanoTime();
- final long start = currentPathTrackingInformation.getStart();
final Context context = THREAD_LOCAL.get();
final String uuid = context.getUuid();
@@ -203,8 +202,8 @@ public class PathTracker
final PathTrackingEntry pathTrackingEntry =
new PathTrackingEntry( uuid, NODE, this.currentPathTrackingInformation.getClassName(), //
this.currentPathTrackingInformation.getMethodName(), //
- start, //
- ( end - start ), //
+ currentPathTrackingInformation.getStartDateNs(), //
+ ( end - currentPathTrackingInformation.getStart() ), //
this.currentPathTrackingInformation.getLevel() );
if ( USE_STORE )
Modified: incubator/sirona/trunk/api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java?rev=1713939&r1=1713938&r2=1713939&view=diff
==============================================================================
--- incubator/sirona/trunk/api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java (original)
+++ incubator/sirona/trunk/api/src/main/java/org/apache/sirona/pathtracking/PathTrackingInformation.java Wed Nov 11 22:16:03 2015
@@ -17,11 +17,21 @@
package org.apache.sirona.pathtracking;
+import java.util.concurrent.TimeUnit;
+
/**
* @since 0.2
*/
public class PathTrackingInformation
{
+ private static final long OFFSET;
+ static
+ {
+ // nanoTime is a clock solution, we need start date for final query so computing the local offset
+ // to get back a ~ date
+ OFFSET = TimeUnit.MILLISECONDS.toNanos(System.currentTimeMillis()) - System.nanoTime();
+ }
+
private String className;
private String methodName;
@@ -37,6 +47,11 @@ public class PathTrackingInformation
this.start = System.nanoTime();
}
+ public long getStartDateNs()
+ {
+ return OFFSET + start;
+ }
+
public String getClassName()
{
return className;