Skip to content
Snippets Groups Projects
Commit 5515d74b authored by phillu's avatar phillu
Browse files

added records per second counter

parent 9f04d087
No related branches found
No related tags found
No related merge requests found
package explorviz.live_trace_processing.filter.counting;
import explorviz.live_trace_processing.filter.IPipeReceiver;
public interface IRecordCounting extends IPipeReceiver {
}
package explorviz.live_trace_processing.filter.counting;
import explorviz.live_trace_processing.filter.AbstractFilter;
import explorviz.live_trace_processing.filter.IPipeReceiver;
import explorviz.live_trace_processing.record.IRecord;
import explorviz.live_trace_processing.record.event.AbstractEventRecord;
import explorviz.live_trace_processing.record.trace.Trace;
public class RecordCountingFilter extends AbstractFilter implements IRecordCounting {
public RecordCountingFilter(final IPipeReceiver receiver) {
super(receiver, 16, 64, "Records/sec");
counter.setEnabled(false);
}
@Override
public void processRecord(final IRecord record) {
if (record instanceof Trace) {
final Trace trace = (Trace) record;
if (trace.isValid()) {
counter.inputObjectsCount(trace.getTraceEvents().size());
}
} else if (record instanceof AbstractEventRecord) {
counter.inputObjectsCount(1);
} else {
deliver(record);
}
}
}
...@@ -39,8 +39,9 @@ public final class TraceReconstructionFilter extends AbstractFilter implements I ...@@ -39,8 +39,9 @@ public final class TraceReconstructionFilter extends AbstractFilter implements I
traceBuffer.insertEvent(abstractOperationEvent); traceBuffer.insertEvent(abstractOperationEvent);
if (traceBuffer.isFinished()) { if (traceBuffer.isFinished()) {
deliver(traceBuffer.toTrace(true)); final Trace trace = traceBuffer.toTrace(true);
deliver(trace);
traceId2trace.remove(traceId); traceId2trace.remove(traceId);
} }
} else if (record instanceof Trace) { } else if (record instanceof Trace) {
......
...@@ -5,6 +5,8 @@ import java.util.concurrent.TimeUnit; ...@@ -5,6 +5,8 @@ import java.util.concurrent.TimeUnit;
import explorviz.live_trace_processing.configuration.Configuration; import explorviz.live_trace_processing.configuration.Configuration;
import explorviz.live_trace_processing.configuration.ConfigurationFactory; import explorviz.live_trace_processing.configuration.ConfigurationFactory;
import explorviz.live_trace_processing.filter.ITraceSink; import explorviz.live_trace_processing.filter.ITraceSink;
import explorviz.live_trace_processing.filter.counting.IRecordCounting;
import explorviz.live_trace_processing.filter.counting.RecordCountingFilter;
import explorviz.live_trace_processing.filter.reconstruction.ITraceReconstruction; import explorviz.live_trace_processing.filter.reconstruction.ITraceReconstruction;
import explorviz.live_trace_processing.filter.reconstruction.TraceReconstructionFilter; import explorviz.live_trace_processing.filter.reconstruction.TraceReconstructionFilter;
import explorviz.live_trace_processing.filter.reduction.ITraceReduction; import explorviz.live_trace_processing.filter.reduction.ITraceReduction;
...@@ -14,8 +16,10 @@ import explorviz.live_trace_processing.reader.TCPReader; ...@@ -14,8 +16,10 @@ import explorviz.live_trace_processing.reader.TCPReader;
public class FilterConfiguration { public class FilterConfiguration {
public static void configureAndStartFilters(final Configuration configuration, public static void configureAndStartFilters(final Configuration configuration,
final ITraceSink sink) { final ITraceSink sink) {
final IRecordCounting recordCounting = new RecordCountingFilter(sink);
final ITraceReduction traceReduction = new TracePatternSummarizationFilter( final ITraceReduction traceReduction = new TracePatternSummarizationFilter(
TimeUnit.MILLISECONDS.toNanos(990), sink); TimeUnit.MILLISECONDS.toNanos(990), recordCounting);
final ITraceReconstruction traceReconstruction = new TraceReconstructionFilter( final ITraceReconstruction traceReconstruction = new TraceReconstructionFilter(
TimeUnit.SECONDS.toNanos(4), traceReduction); TimeUnit.SECONDS.toNanos(4), traceReduction);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment