Package com.xceptance.xlt.api.engine
Class TransactionData
- java.lang.Object
-
- com.xceptance.xlt.api.engine.AbstractData
-
- com.xceptance.xlt.api.engine.TimerData
-
- com.xceptance.xlt.api.engine.TransactionData
-
- All Implemented Interfaces:
Data
public class TransactionData extends TimerData
The
TransactionData
class holds any data measured for a transaction. Typically, a transaction spans exactly one execution of a certain test case, which itself comprises one or more actions.The values stored include not only the transaction's start and run time, but also an indicator whether or not the transaction was executed successfully and, if it has failed, what was the cause. Data gathered for the same type of transaction may be correlated via the name attribute.
Note that
TransactionData
objects have a "T" as their type code.- See Also:
ActionData
,RequestData
,CustomData
,EventData
-
-
Constructor Summary
Constructors Constructor Description TransactionData()
Creates a new TransactionData object.TransactionData(java.lang.String name)
Creates a new TransactionData object and gives it the specified name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getDirectoryName()
Returns the name of the directory where the result browser for this transaction is stored.java.lang.String
getDumpDirectoryPath()
Returns the path to the directory where dumped pages can be found if this transaction failed.java.lang.String
getFailedActionName()
Returns the name of the action that caused the transaction to fail.java.lang.String
getFailureMessage()
Returns the message of the throwable that caused this transaction to fail.java.lang.String
getFailureStackTrace()
Returns the stack trace of the throwable that caused this transaction to fail.java.lang.String
getTestUserNumber()
Returns the number (or index, [0..N]) of the test user that produced this transaction data.void
setDirectoryName(java.lang.String directoryName)
Sets the name of the directory where the result browser for this transaction is stored.void
setFailedActionName(java.lang.String actionName)
Sets the name of the action that caused the transaction to fail.void
setFailureStackTrace(java.lang.String trace)
Sets the stack trace of the throwable that caused this transaction to fail.void
setFailureStackTrace(java.lang.Throwable throwable)
Sets the stack trace attribute retrieved from the given throwable.void
setRemainingValues(java.util.List<XltCharBuffer> values)
Called by XLT during report creation to recreate the remaining object state from the passed string list.void
setTestUserNumber(java.lang.String testUserNumber)
Sets the number (or index, [0..N]) of the test user that produced this transaction data.java.util.List<java.lang.String>
toList()
Called by XLT during a load test to return the full state of the object as a list of strings.-
Methods inherited from class com.xceptance.xlt.api.engine.TimerData
getEndTime, getRunTime, hasFailed, setFailed, setRunTime, setRunTime
-
Methods inherited from class com.xceptance.xlt.api.engine.AbstractData
getAgentName, getName, getTime, getTransactionName, getTypeCode, setAgentName, setAllValues, setBaseValues, setName, setTime, setTransactionName
-
-
-
-
Constructor Detail
-
TransactionData
public TransactionData()
Creates a new TransactionData object.
-
TransactionData
public TransactionData(java.lang.String name)
Creates a new TransactionData object and gives it the specified name. Furthermore, the time attribute is set to the current time.- Parameters:
name
- the transaction name
-
-
Method Detail
-
getDirectoryName
public java.lang.String getDirectoryName()
Returns the name of the directory where the result browser for this transaction is stored.- Returns:
- the directory name
-
setDirectoryName
public void setDirectoryName(java.lang.String directoryName)
Sets the name of the directory where the result browser for this transaction is stored.- Parameters:
directoryName
- the directory name
-
getTestUserNumber
public java.lang.String getTestUserNumber()
Returns the number (or index, [0..N]) of the test user that produced this transaction data.- Returns:
- the test user number as a string
-
setTestUserNumber
public void setTestUserNumber(java.lang.String testUserNumber)
Sets the number (or index, [0..N]) of the test user that produced this transaction data.- Parameters:
testUserNumber
- the test user number as a string
-
getFailedActionName
public java.lang.String getFailedActionName()
Returns the name of the action that caused the transaction to fail. Will be empty if the transaction was successful or the transaction failed outside of an action.- Returns:
- the action name
-
setFailedActionName
public void setFailedActionName(java.lang.String actionName)
Sets the name of the action that caused the transaction to fail.- Parameters:
actionName
- the action name
-
getDumpDirectoryPath
public java.lang.String getDumpDirectoryPath()
Returns the path to the directory where dumped pages can be found if this transaction failed. The path is meant to be relative to the results directory of the respective load test. Typically, it looks like "ac1/TAuthor/1/output/1216803080255".- Returns:
- the dump directory path, or
null
if this transaction did not fail or no directory information was available
-
getFailureMessage
public java.lang.String getFailureMessage()
Returns the message of the throwable that caused this transaction to fail.- Returns:
- the message (may be null)
-
getFailureStackTrace
public java.lang.String getFailureStackTrace()
Returns the stack trace of the throwable that caused this transaction to fail.- Returns:
- the trace (may be null)
-
setFailureStackTrace
public void setFailureStackTrace(java.lang.String trace)
Sets the stack trace of the throwable that caused this transaction to fail.- Parameters:
trace
- the trace
-
setFailureStackTrace
public void setFailureStackTrace(java.lang.Throwable throwable)
Sets the stack trace attribute retrieved from the given throwable.- Parameters:
throwable
- the throwable
-
toList
public java.util.List<java.lang.String> toList()
Called by XLT during a load test to return the full state of the object as a list of strings. The first three entries have to be, in this order, the type code, the name, and the timestamp. All remaining entries and their order are specific to the concrete implementation class.Override this method in sub classes by calling the super method and adding custom values to the list it returns.
- Specified by:
toList
in interfaceData
- Overrides:
toList
in classTimerData
- Returns:
- the list of values that form the state of this object
- See Also:
Data.setBaseValues(List)
,Data.setRemainingValues(List)
-
setRemainingValues
public void setRemainingValues(java.util.List<XltCharBuffer> values)
Called by XLT during report creation to recreate the remaining object state from the passed string list. The base values have already been initialized by callingData.setBaseValues(List)
with the same list of values. Splitting the process of recreating the full object state into two methods is purely for performance reasons as the second step is not always needed.- Specified by:
setRemainingValues
in interfaceData
- Overrides:
setRemainingValues
in classTimerData
- Parameters:
values
- the string list to recreate the object state from- See Also:
Data.setBaseValues(List)
,Data.toList()
-
-