Kieker 1.12

kieker.tools.traceAnalysis.filter.traceReconstruction
Class TraceReconstructionFilter

java.lang.Object
  extended by kieker.analysis.analysisComponent.AbstractAnalysisComponent
      extended by kieker.analysis.plugin.AbstractPlugin
          extended by kieker.analysis.plugin.filter.AbstractFilterPlugin
              extended by kieker.tools.traceAnalysis.filter.AbstractTraceAnalysisFilter
                  extended by kieker.tools.traceAnalysis.filter.AbstractTraceProcessingFilter
                      extended by kieker.tools.traceAnalysis.filter.traceReconstruction.TraceReconstructionFilter
All Implemented Interfaces:
IAnalysisComponent, IFilterPlugin, IPlugin

public class TraceReconstructionFilter
extends AbstractTraceProcessingFilter

Since:
1.1
Author:
Andre van Hoorn

Nested Class Summary
 
Nested classes/interfaces inherited from interface kieker.analysis.plugin.IPlugin
IPlugin.PluginInputPortReference, IPlugin.STATE
 
Field Summary
static java.lang.String CONFIG_PROPERTY_NAME_IGNORE_INVALID_TRACES
          This is the name of the property determining whether to ignore invalid traces or not.
static java.lang.String CONFIG_PROPERTY_NAME_MAX_TRACE_DURATION
          This is the name of the property determining the maximal duration of a trace.
static java.lang.String CONFIG_PROPERTY_NAME_TIMEUNIT
          This is the name of the property determining the used time unit.
static java.lang.String CONFIG_PROPERTY_VALUE_MAX_TRACE_DURATION
          This is the default value for the maximal duration of a trace.
static java.lang.String CONFIG_PROPERTY_VALUE_TIMEUNIT
          This is the default used time unit.
static java.lang.String INPUT_PORT_NAME_EXECUTIONS
          This is the name of the input port receiving new executions.
static java.lang.String OUTPUT_PORT_NAME_EXECUTION_TRACE
          This is the name of the output port delivering the reconstructed execution traces.
static java.lang.String OUTPUT_PORT_NAME_INVALID_EXECUTION_TRACE
          This is the name of the output port delivering the reconstructed, but invalid executions traces.
static java.lang.String OUTPUT_PORT_NAME_MESSAGE_TRACE
          This is the name of the output port delivering the reconstructed message traces.
 
Fields inherited from class kieker.tools.traceAnalysis.filter.AbstractTraceAnalysisFilter
CONFIG_PROPERTY_VALUE_VERBOSE, LOG, REPOSITORY_PORT_NAME_SYSTEM_MODEL
 
Fields inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
CONFIG_NAME, configuration, log, projectContext, recordsTimeUnitFromProjectContext
 
Constructor Summary
TraceReconstructionFilter(Configuration configuration, IProjectContext projectContext)
          Creates a new instance of this class using the given parameters.
 
Method Summary
 Configuration getCurrentConfiguration()
          This method should deliver a Configuration object containing the current configuration of this instance.
 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.
 long getMinTin()
          Returns the minimum tin timestamp of a processed execution.
 boolean init()
          Initiates the start of a component.
 void inputExecutions(Execution execution)
          This method represents the input port of this filter.
 void printStatusMessage()
          Returns a user-addressed status message to be logged by the calling tool.
 void terminate(boolean error)
          Terminates the filter (internally, all pending traces are processed).
 
Methods inherited from class kieker.tools.traceAnalysis.filter.AbstractTraceProcessingFilter
getErrorCount, getLastTraceIdError, getLastTraceIdSuccess, getSuccessCount, getTotalCount, reportError, reportSuccess
 
Methods inherited from class kieker.tools.traceAnalysis.filter.AbstractTraceAnalysisFilter
createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, createExecutionByEntityNames, getSystemEntityFactory, printDebugLogMessage, printErrorLogMessage
 
Methods inherited from class kieker.analysis.plugin.AbstractPlugin
areAllRepositoryPortsConnected, connect, connect, deliver, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getDefaultConfiguration, getIncomingPlugins, getPluginDescription, getPluginName, getRepository, getState, isConnectionAllowed, notifyNewIncomingConnection, notifyNewOutgoingConnection, shutdown, start
 
Methods inherited from class kieker.analysis.analysisComponent.AbstractAnalysisComponent
getName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface kieker.analysis.plugin.IPlugin
connect, getAllDisplayNames, getAllInputPortNames, getAllOutputPortNames, getAllRepositoryPortNames, getConnectedPlugins, getCurrentRepositories, getName, getPluginDescription, getPluginName, getState
 

Field Detail

INPUT_PORT_NAME_EXECUTIONS

public static final java.lang.String INPUT_PORT_NAME_EXECUTIONS
This is the name of the input port receiving new executions.

See Also:
Constant Field Values

OUTPUT_PORT_NAME_MESSAGE_TRACE

public static final java.lang.String OUTPUT_PORT_NAME_MESSAGE_TRACE
This is the name of the output port delivering the reconstructed message traces.

See Also:
Constant Field Values

OUTPUT_PORT_NAME_EXECUTION_TRACE

public static final java.lang.String OUTPUT_PORT_NAME_EXECUTION_TRACE
This is the name of the output port delivering the reconstructed execution traces.

See Also:
Constant Field Values

OUTPUT_PORT_NAME_INVALID_EXECUTION_TRACE

public static final java.lang.String OUTPUT_PORT_NAME_INVALID_EXECUTION_TRACE
This is the name of the output port delivering the reconstructed, but invalid executions traces.

See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_TIMEUNIT

public static final java.lang.String CONFIG_PROPERTY_NAME_TIMEUNIT
This is the name of the property determining the used time unit.

See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_MAX_TRACE_DURATION

public static final java.lang.String CONFIG_PROPERTY_NAME_MAX_TRACE_DURATION
This is the name of the property determining the maximal duration of a trace.

See Also:
Constant Field Values

CONFIG_PROPERTY_NAME_IGNORE_INVALID_TRACES

public static final java.lang.String CONFIG_PROPERTY_NAME_IGNORE_INVALID_TRACES
This is the name of the property determining whether to ignore invalid traces or not.

See Also:
Constant Field Values

CONFIG_PROPERTY_VALUE_TIMEUNIT

public static final java.lang.String CONFIG_PROPERTY_VALUE_TIMEUNIT
This is the default used time unit.

See Also:
Constant Field Values

CONFIG_PROPERTY_VALUE_MAX_TRACE_DURATION

public static final java.lang.String CONFIG_PROPERTY_VALUE_MAX_TRACE_DURATION
This is the default value for the maximal duration of a trace.

See Also:
Constant Field Values
Constructor Detail

TraceReconstructionFilter

public TraceReconstructionFilter(Configuration configuration,
                                 IProjectContext projectContext)
Creates a new instance of this class using the given parameters.

Parameters:
configuration - The configuration for this component.
projectContext - The project context for this component.
Method Detail

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

init

public boolean init()
Initiates the start of a component. This method is called once when a AnalysisController's run() method is called. This implementation must not be blocking! Asynchronous consumers would spawn (an) asynchronous thread(s) in this method.

Specified by:
init in interface IPlugin
Overrides:
init in class AbstractFilterPlugin
Returns:
true on success; false otherwise.

inputExecutions

public void inputExecutions(Execution execution)
This method represents the input port of this filter.

Parameters:
execution - The next execution.

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

terminate

public void terminate(boolean error)
Terminates the filter (internally, all pending traces are processed).

Specified by:
terminate in interface IPlugin
Overrides:
terminate in class AbstractFilterPlugin
Parameters:
error - Determines whether the plugin is terminated due to an error or not.

printStatusMessage

public void printStatusMessage()
Description copied from class: AbstractTraceProcessingFilter
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 class AbstractTraceProcessingFilter

getCurrentConfiguration

public Configuration getCurrentConfiguration()
This method should deliver a Configuration object containing the current configuration of this instance. In other words: The constructor should be able to use the given object to initialize a new instance of this class with the same intern properties.

Specified by:
getCurrentConfiguration in interface IAnalysisComponent
Specified by:
getCurrentConfiguration in interface IPlugin
Overrides:
getCurrentConfiguration in class AbstractTraceAnalysisFilter
Returns:
A completely filled configuration object.

Kieker 1.12

Copyright 2015 Kieker Project, http://kieker-monitoring.net