@Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
/** * End an event which was previously started. Once ended, log how much time * the event took. It is illegal to end an Event that was not started. It is * good practice to endEvent in a finally block. See Also startEvent. * * @param eventName * - The name of the event to start */ @Override public void endEvent(String eventName) { TimingInfo event = eventsBeingProfiled.get(eventName); /* Somebody tried to end an event that was not started. */ if (event == null) { LogFactory.getLog(getClass()).warn ("Trying to end an event which was never started: " + eventName); return; } event.endTiming(); this.timingInfo.addSubMeasurement( eventName, TimingInfo.unmodifiableTimingInfo( event.getStartEpochTimeMilliIfKnown(), event.getStartTimeNano(), event.getEndTimeNano())); }
/**= * @return the star epoch time in milliseconds. */ @Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
@Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
if (latencyTimingInfo != null) { latency = convertToLongIfNotNull(latencyTimingInfo.getTimeTakenMillisIfKnown()); timestamp = latencyTimingInfo.getStartEpochTimeMilliIfKnown();
/** * End an event which was previously started. Once ended, log how much time * the event took. It is illegal to end an Event that was not started. It is * good practice to endEvent in a finally block. See Also startEvent. * * @param eventName * - The name of the event to start */ @Override public void endEvent(String eventName) { TimingInfo event = eventsBeingProfiled.get(eventName); /* Somebody tried to end an event that was not started. */ if (event == null) { LogFactory.getLog(getClass()).warn ("Trying to end an event which was never started: " + eventName); return; } event.endTiming(); this.timingInfo.addSubMeasurement( eventName, TimingInfo.unmodifiableTimingInfo( event.getStartEpochTimeMilliIfKnown(), event.getStartTimeNano(), event.getEndTimeNano())); }
timestamp = httpRequestTime.getStartEpochTimeMilliIfKnown(); attemptLatency = convertToLongIfNotNull(httpRequestTime.getTimeTakenMillisIfKnown());
@Test public void newTimingWithClockTimeIfKnown() throws InterruptedException { final long startTimeMilli = System.currentTimeMillis(); final long startTimeNano = System.nanoTime(); Thread.sleep(1);// sleep for 1 millisecond final long endTimeNano = System.nanoTime(); TimingInfo ti = TimingInfo.newTimingInfoFullSupport(startTimeMilli, startTimeNano, endTimeNano); assertTrue(ti.isStartEpochTimeMilliKnown()); assertTrue(ti.getStartTimeNano() == startTimeNano); assertTrue(ti.getStartEpochTimeMilliIfKnown().longValue() == startTimeMilli); assertTrue(ti.isEndTimeKnown()); assertTrue(ti.getEndTimeNanoIfKnown().longValue() > startTimeNano); assertTrue(ti.getEndEpochTimeMilliIfKnown().longValue() >= startTimeMilli); assertTrue(ti.getEndEpochTimeMilliIfKnown().longValue() == ti.getEndEpochTimeMilli()); assertTrue(ti.getTimeTakenMillisIfKnown().longValue() >= 0); }
@Test public void absurdTimingWithClockIfKnown() throws InterruptedException { final long startTimeMilli = System.currentTimeMillis(); final long startTimeNano = System.nanoTime(); Thread.sleep(1);// sleep for 1 millisecond final long endTimeNano = System.nanoTime(); // absurdly swap the start/end times TimingInfo ti = TimingInfo.newTimingInfoFullSupport(startTimeMilli, endTimeNano, startTimeNano); assertTrue(ti.isStartEpochTimeMilliKnown()); assertTrue(ti.getStartTimeNano() > startTimeNano); assertTrue(ti.getStartEpochTimeMilliIfKnown().longValue() == startTimeMilli); assertTrue(ti.isEndTimeKnown()); assertTrue(ti.getEndTimeNanoIfKnown().longValue() < endTimeNano); long end_epoch_time = startTimeMilli + TimeUnit.NANOSECONDS.toMillis(startTimeNano - endTimeNano); assertTrue(ti.getEndEpochTimeMilliIfKnown().longValue() == end_epoch_time); assertTrue(ti.getEndEpochTimeMilliIfKnown().longValue() == ti.getEndEpochTimeMilli()); double double_diff = TimeUnit.NANOSECONDS.toMicros(startTimeNano - endTimeNano) / 1000.0; assertTrue(ti.getTimeTakenMillisIfKnown().doubleValue() == double_diff); long long_diff = TimeUnit.NANOSECONDS.toMillis(startTimeNano - endTimeNano); assertTrue(ti.getTimeTakenMillisIfKnown().longValue() == long_diff); }
@Test public void absurdTimingWithNoClockIfKnown() throws InterruptedException { final long startTimeNano = System.nanoTime(); Thread.sleep(1);// sleep for 1 millisecond final long endTimeNano = System.nanoTime(); // absurdly swap the start/end times TimingInfo ti = TimingInfo.newTimingInfoFullSupport(endTimeNano, startTimeNano); assertFalse(ti.isStartEpochTimeMilliKnown()); assertTrue(ti.getStartTimeNano() > startTimeNano); assertNull(ti.getStartEpochTimeMilliIfKnown()); assertTrue(ti.isEndTimeKnown()); assertTrue(ti.getEndTimeNanoIfKnown().longValue() < endTimeNano); assertNull(ti.getEndEpochTimeMilliIfKnown()); double double_diff = TimeUnit.NANOSECONDS.toMicros(startTimeNano - endTimeNano) / 1000.0; assertTrue(ti.getTimeTakenMillisIfKnown().doubleValue() == double_diff); long long_diff = TimeUnit.NANOSECONDS.toMillis(startTimeNano - endTimeNano); assertTrue(ti.getTimeTakenMillisIfKnown().longValue() == long_diff); }
@Test public void newTimingWithNoClockTimeIfKnown() throws InterruptedException { final long startTimeNano = System.nanoTime(); Thread.sleep(1);// sleep for 1 millisecond final long endTimeNano = System.nanoTime(); TimingInfo ti = TimingInfo.newTimingInfoFullSupport(startTimeNano, endTimeNano); assertFalse(ti.isStartEpochTimeMilliKnown()); assertTrue(ti.getStartTimeNano() == startTimeNano); assertNull(ti.getStartEpochTimeMilliIfKnown()); assertTrue(ti.isEndTimeKnown()); assertTrue(ti.getEndTimeNanoIfKnown().longValue() > startTimeNano); assertNull(ti.getEndEpochTimeMilliIfKnown()); assertTrue(ti.getTimeTakenMillisIfKnown().longValue() >= 0); }
/**= * @return the star epoch time in milliseconds. */ @Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
/**= * @return the star epoch time in milliseconds. */ @Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
@Deprecated public final long getStartEpochTimeMilli() { Long v = getStartEpochTimeMilliIfKnown(); return v == null ? UNKNOWN : v.longValue(); }
@Test public void startEndTimingIfKnown() { // Start timing final long startTimeNano = System.nanoTime(); final long startTimeMilli = System.currentTimeMillis(); TimingInfo ti = TimingInfo.startTimingFullSupport(); assertTrue(ti.isStartEpochTimeMilliKnown()); assertTrue(ti.getStartTimeNano() >= startTimeNano); assertTrue(ti.getStartEpochTimeMilliIfKnown().longValue() >= startTimeMilli); // End time is not known assertFalse(ti.isEndTimeKnown()); assertNull(ti.getEndTimeNanoIfKnown()); assertNull(ti.getEndEpochTimeMilliIfKnown()); assertNull(ti.getTimeTakenMillisIfKnown()); // End timing ti.endTiming(); assertTrue(ti.isEndTimeKnown()); assertTrue(ti.getEndTimeNanoIfKnown().longValue() >= startTimeNano); assertTrue(ti.getEndEpochTimeMilliIfKnown().longValue() >= startTimeMilli); assertTrue(ti.getEndEpochTimeMilli() == ti.getEndEpochTimeMilliIfKnown().longValue()); assertTrue(ti.getTimeTakenMillisIfKnown().longValue() >= 0); }
if (latencyTimingInfo != null) { latency = convertToLongIfNotNull(latencyTimingInfo.getTimeTakenMillisIfKnown()); timestamp = latencyTimingInfo.getStartEpochTimeMilliIfKnown();
timestamp = httpRequestTime.getStartEpochTimeMilliIfKnown(); attemptLatency = convertToLongIfNotNull(httpRequestTime.getTimeTakenMillisIfKnown());