From c73b54db513a1b699e8a34c49715d2959f202c8c Mon Sep 17 00:00:00 2001 From: Florian Fittkau <ffi@informatik.uni-kiel.de> Date: Thu, 12 Dec 2013 00:04:47 +0100 Subject: [PATCH] runtime statistics created at first real usage --- .../filter/reconstruction/TraceReconstructionBuffer.java | 4 +++- .../summarization/TracePatternSummarizationBuffer.java | 4 ++-- .../live_trace_processing/main/FilterConfiguration.java | 2 +- .../live_trace_processing/reader/TCPReaderOneClient.java | 7 +++---- .../reconstruction/TraceReconstructionBufferTest.java | 4 +--- 5 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java index a82d32b..f2e5f93 100644 --- a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java @@ -10,6 +10,7 @@ import explorviz.live_trace_processing.record.event.AbstractAfterEventRecord; import explorviz.live_trace_processing.record.event.AbstractAfterFailedEventRecord; import explorviz.live_trace_processing.record.event.AbstractBeforeEventRecord; import explorviz.live_trace_processing.record.event.AbstractEventRecord; +import explorviz.live_trace_processing.record.trace.RuntimeStatisticInformation; import explorviz.live_trace_processing.record.trace.Trace; class TraceReconstructionBuffer { @@ -85,7 +86,8 @@ class TraceReconstructionBuffer { final AbstractBeforeEventRecord beforeEvent = stack.pop(); final long time = event.getLoggingTimestamp() - beforeEvent.getLoggingTimestamp(); - beforeEvent.getRuntime().set(time); + beforeEvent.setRuntimeStatisticInformation(new RuntimeStatisticInformation(1, time, + time * time)); } } return new Trace(events, valid); diff --git a/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java b/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java index d6d7635..6a665c1 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java @@ -35,8 +35,8 @@ class TracePatternSummarizationBuffer { final AbstractBeforeEventRecord abstractBeforeEventRecord = (AbstractBeforeEventRecord) event; final AbstractBeforeEventRecord abstractBeforeEventRecord2 = (AbstractBeforeEventRecord) records .get(i); - abstractBeforeEventRecord.getRuntime().merge( - abstractBeforeEventRecord2.getRuntime()); + abstractBeforeEventRecord.getRuntimeStatisticInformation().merge( + abstractBeforeEventRecord2.getRuntimeStatisticInformation()); } } } diff --git a/src/explorviz/live_trace_processing/main/FilterConfiguration.java b/src/explorviz/live_trace_processing/main/FilterConfiguration.java index 4975c41..8590ac5 100644 --- a/src/explorviz/live_trace_processing/main/FilterConfiguration.java +++ b/src/explorviz/live_trace_processing/main/FilterConfiguration.java @@ -15,7 +15,7 @@ public class FilterConfiguration { public static void configureAndStartFilters(final Configuration configuration, final ITraceSink sink) { final ITraceReduction traceReduction = new TracePatternSummarizationFilter( - TimeUnit.SECONDS.toNanos(1), sink); + TimeUnit.MILLISECONDS.toNanos(990), sink); final ITraceReconstruction traceReconstruction = new TraceReconstructionFilter( TimeUnit.SECONDS.toNanos(4), traceReduction); diff --git a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java index 022dfeb..734ad7d 100644 --- a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java +++ b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java @@ -28,7 +28,6 @@ import explorviz.live_trace_processing.record.misc.StringRegistryRecord; import explorviz.live_trace_processing.record.misc.SystemMonitoringRecord; import explorviz.live_trace_processing.record.misc.TimedPeriodRecord; import explorviz.live_trace_processing.record.trace.HostApplicationMetaDataRecord; -import explorviz.live_trace_processing.record.trace.RuntimeStatisticInformation; import explorviz.live_trace_processing.record.trace.Trace; public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalReceiver { @@ -284,7 +283,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new BeforeOperationEventRecord(timestamp, traceId, orderIndex, - objectId, operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + objectId, operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, BeforeOperationEventRecord.COMPRESSED_BYTE_LENGTH + 1); } @@ -335,7 +334,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new BeforeConstructorEventRecord(timestamp, traceId, orderIndex, - objectId, operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + objectId, operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, BeforeConstructorEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -378,7 +377,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new BeforeStaticOperationEventRecord(timestamp, traceId, orderIndex, - operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, BeforeStaticOperationEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); diff --git a/test/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBufferTest.java b/test/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBufferTest.java index 9f5ec67..66d2029 100644 --- a/test/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBufferTest.java +++ b/test/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBufferTest.java @@ -6,7 +6,6 @@ import org.junit.Test; import explorviz.live_trace_processing.record.event.normal.BeforeOperationEventRecord; import explorviz.live_trace_processing.record.trace.HostApplicationMetaDataRecord; -import explorviz.live_trace_processing.record.trace.RuntimeStatisticInformation; public class TraceReconstructionBufferTest { @@ -14,8 +13,7 @@ public class TraceReconstructionBufferTest { public void testInsertEvent() throws Exception { final TraceReconstructionBuffer traceReconstructionBuffer = new TraceReconstructionBuffer(); traceReconstructionBuffer.insertEvent(new BeforeOperationEventRecord(1000, 1, 0, 0, "test", - new HostApplicationMetaDataRecord("testHost", "testApp"), - new RuntimeStatisticInformation())); + new HostApplicationMetaDataRecord("testHost", "testApp"))); assertTrue(true); // TODO } -- GitLab