RunningSample (Apache JMeter dist API)
Description: declaration: package: org.apache.jmeter.visualizers, class: RunningSample

Package org.apache.jmeter.visualizers

# Class RunningSample

java.lang.Object
org.apache.jmeter.visualizers.RunningSample

public class RunningSample extends Object

Running sample data container. Just instantiate a new instance of this class, and then call `addSample(SampleResult)` a few times, and pull the stats out with whatever methods you prefer.

Please note that this class is not thread-safe. The calling class is responsible for ensuring thread safety if required. Versions prior to 2.3.2 appeared to be thread-safe but weren't as label and index were not final. Also the caller needs to synchronize access in order to ensure that variables are consistent.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RunningSample(String label, int index)`
  Use this constructor to create the initial instance
  `RunningSample(RunningSample src)`
  Copy constructor to create a duplicate of existing instance (without the disadvantages of clone()

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addSample(SampleResult res)`
  Records a sample.
  `void`
  `addSample(RunningSample rs)`
  Adds another RunningSample to this one.
  `void`
  `clear()`
  Clear the counters (useful for differential stats)
  `long`
  `getAverage()`
  Returns the average time in milliseconds that samples ran in.
  `long`
  `getElapsed()`
  Get the elapsed time for the samples
  `long`
  `getErrorCount()`
  `double`
  `getErrorPercentage()`
  Returns the raw double value of the percentage of samples with errors that were recorded.
  `String`
  `getErrorPercentageString()`
  Returns a String which represents the percentage of sample errors that have occurred.
  `int`
  `getIndex()`
  `String`
  `getLabel()`
  `long`
  `getMax()`
  Returns the time in milliseconds of the slowest sample.
  `long`
  `getMin()`
  Returns the time in milliseconds of the quickest sample.
  `long`
  `getNumSamples()`
  Returns the number of samples that have been recorded by this instance of the RunningSample class.
  `double`
  `getRate()`
  Returns the throughput associated to this sampler in requests per second.
  `double`
  `getRatePerMin()`
  Returns the throughput associated to this sampler in requests per min.
  `String`
  `getRateString()`
  Returns a String that represents the throughput associated for this sampler, in units appropriate to its dimension:
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### RunningSample

    public RunningSample(String label, int index)
    Use this constructor to create the initial instance
    Parameters:
      `label` - the label for this component
      `index` - the index of this component

  - ### RunningSample

    public RunningSample(RunningSample src)
    Copy constructor to create a duplicate of existing instance (without the disadvantages of clone()
    Parameters:
      `src` - existing RunningSample to be copied

- ## Method Details

  - ### clear

    public void clear()
    Clear the counters (useful for differential stats)

  - ### getElapsed

    public long getElapsed()
    Get the elapsed time for the samples
    Returns:
      how long the samples took

  - ### getRate

    public double getRate()
    Returns the throughput associated to this sampler in requests per second. May be slightly skewed because it takes the timestamps of the first and last samples as the total time passed, and the test may actually have started before that start time and ended after that end time.
    Returns:
      throughput associated with this sampler per second

  - ### getRatePerMin

    public double getRatePerMin()
    Returns the throughput associated to this sampler in requests per min. May be slightly skewed because it takes the timestamps of the first and last samples as the total time passed, and the test may actually have started before that start time and ended after that end time.
    Returns:
      throughput associated with this sampler per minute

  - ### getRateString

    public String getRateString()
    Returns a String that represents the throughput associated for this sampler, in units appropriate to its dimension:

    The number is represented in requests/second or requests/minute or requests/hour.

    Examples: "34.2/sec" "0.1/sec" "43.0/hour" "15.9/min"

    Returns:
      a String representation of the rate the samples are being taken at.

  - ### getLabel

    public String getLabel()
    Returns:
      the label for this component

  - ### getIndex

    public int getIndex()
    Returns:
      the index of this component

  - ### addSample

    public void addSample(SampleResult res)
    Records a sample.
    Parameters:
      `res` - sample to record

  - ### addSample

    public void addSample(RunningSample rs)
    Adds another RunningSample to this one. Does not check if it has the same label and index.
    Parameters:
      `rs` - sample to add

  - ### getMin

    public long getMin()
    Returns the time in milliseconds of the quickest sample.
    Returns:
      the time in milliseconds of the quickest sample.

  - ### getMax

    public long getMax()
    Returns the time in milliseconds of the slowest sample.
    Returns:
      the time in milliseconds of the slowest sample.

  - ### getAverage

    public long getAverage()
    Returns the average time in milliseconds that samples ran in.
    Returns:
      the average time in milliseconds that samples ran in.

  - ### getNumSamples

    public long getNumSamples()
    Returns the number of samples that have been recorded by this instance of the RunningSample class.
    Returns:
      the number of samples that have been recorded by this instance of the RunningSample class.

  - ### getErrorPercentage

    public double getErrorPercentage()
    Returns the raw double value of the percentage of samples with errors that were recorded. (Between 0.0 and 1.0) If you want a nicer return format, see `getErrorPercentageString()`.
    Returns:
      the raw double value of the percentage of samples with errors that were recorded.

  - ### getErrorPercentageString

    public String getErrorPercentageString()
    Returns a String which represents the percentage of sample errors that have occurred. ("0.00%" through "100.00%")
    Returns:
      a String which represents the percentage of sample errors that have occurred.

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### getErrorCount

    public long getErrorCount()
    Returns:
      errorCount