Class TraceReconstructionStage
java.lang.Object
teetime.framework.AbstractStage
teetime.framework.AbstractConsumerStage<T>
kieker.analysis.architecture.trace.AbstractTraceAnalysisStage<T>
kieker.analysis.architecture.trace.AbstractTraceProcessingStage<Execution>
kieker.analysis.architecture.trace.reconstruction.TraceReconstructionStage
public class TraceReconstructionStage extends AbstractTraceProcessingStage<Execution>
Uses the incoming data to enrich the connected repository with the reconstructed traces.
Input port: @{link Execution}
Output port:
- messageTraceOutputPort @{link MessageTrace}
- executionTraceOutputPort @{link ExecutionTrace}
- invalidExecutionTraceOutputPort @{linke InvalidExecutiontrace}
- Since:
- 1.1
- Author:
- Andre van Hoorn, Reiner Jung -- ported to teetime
-
Field Summary
-
Constructor Summary
Constructors Constructor Description TraceReconstructionStage(SystemModelRepository repository, java.util.concurrent.TimeUnit timeunit, boolean ignoreInvalidTraces, java.lang.Long maxTraceDuration)
Creates a new instance of this class using the given parameters. -
Method Summary
Modifier and Type Method Description protected void
execute(Execution execution)
teetime.framework.OutputPort<ExecutionTrace>
getExecutionTraceOutputPort()
teetime.framework.OutputPort<InvalidExecutionTrace>
getInvalidExecutionTraceOutputPort()
java.util.Set<java.lang.Long>
getInvalidTraces()
Returns a set of the IDs of invalid traces.long
getMaxTout()
Returns the maximum tout timestamp of a processed execution.long
getMaxTraceDuration()
Return the number of timeunits after which a pending trace is considered to have timed out.teetime.framework.OutputPort<MessageTrace>
getMessageTraceOutputPort()
long
getMinTin()
Returns the minimum tin timestamp of a processed execution.protected void
onTerminating()
void
printStatusMessage()
Returns a user-addressed status message to be logged by the calling tool.Methods inherited from class kieker.analysis.architecture.trace.AbstractTraceProcessingStage
getErrorCount, getLastTraceIdError, getLastTraceIdSuccess, getSuccessCount, getTotalCount, reportError, reportSuccess
Methods inherited from class kieker.analysis.architecture.trace.AbstractTraceAnalysisStage
createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, getSystemModelRepository, printDebugLogMessage, printErrorLogMessage
Methods inherited from class teetime.framework.AbstractConsumerStage
createInputPort, execute, getInputPort
Methods inherited from class teetime.framework.AbstractStage
abort, addInputPortRemovedListener, addOutputPortRemovedListener, compareAndSetBeingExecuted, createInputPort, createInputPort, createInputPort, createOutputPort, createOutputPort, createOutputPort, createOutputPort, declareActive, declarePassive, executeByFramework, getCurrentState, getId, getInputPorts, getOutputPorts, getOwningThread, getTerminationStrategy, isActive, isBeingExecuted, isPaused, isProducer, isStateless, onSignal, onStarting, onValidating, removeDynamicPort, removeDynamicPort, setPaused, setStateless, shouldBeTerminated, signalAlreadyReceived, terminateStage, toString, workCompleted
-
Constructor Details
-
TraceReconstructionStage
public TraceReconstructionStage(SystemModelRepository repository, java.util.concurrent.TimeUnit timeunit, boolean ignoreInvalidTraces, java.lang.Long maxTraceDuration)Creates a new instance of this class using the given parameters.- Parameters:
repository
- the system model repositorytimeunit
- the used time unit, e.g., NANOSECONDSignoreInvalidTraces
- set whether invalid traces should be ignored (true), or the filter must terminate (false)maxTraceDuration
- max time duration for a trace, if null Long.MAX_VALUE
-
-
Method Details
-
getInvalidTraces
public java.util.Set<java.lang.Long> getInvalidTraces()Returns a set of the IDs of invalid traces.- Returns:
- a set of the IDs of invalid traces
-
getMinTin
public final long getMinTin()Returns the minimum tin timestamp of a processed execution.- Returns:
- the minimum tin timestamp of a processed execution
-
getMaxTout
public final long getMaxTout()Returns the maximum tout timestamp of a processed execution.- Returns:
- the maximum tout timestamp of a processed execution
-
execute
- Specified by:
execute
in classteetime.framework.AbstractConsumerStage<Execution>
- Throws:
java.lang.Exception
-
getMaxTraceDuration
public final long getMaxTraceDuration()Return the number of timeunits after which a pending trace is considered to have timed out.- Returns:
- the timeout duration for a pending trace in timeunits
-
onTerminating
protected void onTerminating()- Overrides:
onTerminating
in classteetime.framework.AbstractStage
-
printStatusMessage
public void printStatusMessage()Description copied from class:AbstractTraceProcessingStage
Returns a user-addressed status message to be logged by the calling tool. Extending classes may override this method but should call the then-inherited method first.- Overrides:
printStatusMessage
in classAbstractTraceProcessingStage<Execution>
-
getMessageTraceOutputPort
-
getExecutionTraceOutputPort
-
getInvalidExecutionTraceOutputPort
-