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 voidexecute(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.longgetMaxTout()Returns the maximum tout timestamp of a processed execution.longgetMaxTraceDuration()Return the number of timeunits after which a pending trace is considered to have timed out.teetime.framework.OutputPort<MessageTrace>getMessageTraceOutputPort()longgetMinTin()Returns the minimum tin timestamp of a processed execution.protected voidonTerminating()voidprintStatusMessage()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, reportSuccessMethods inherited from class kieker.analysis.architecture.trace.AbstractTraceAnalysisStage
createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, getSystemModelRepository, printDebugLogMessage, printErrorLogMessageMethods inherited from class teetime.framework.AbstractConsumerStage
createInputPort, execute, getInputPortMethods 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:
executein 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:
onTerminatingin classteetime.framework.AbstractStage
-
printStatusMessage
public void printStatusMessage()Description copied from class:AbstractTraceProcessingStageReturns 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:
printStatusMessagein classAbstractTraceProcessingStage<Execution>
-
getMessageTraceOutputPort
-
getExecutionTraceOutputPort
-
getInvalidExecutionTraceOutputPort
-