cascading.stats

## Class FlowStepStats

- java.lang.Object
- - cascading.stats.CascadingStats<FlowNodeStats>
  - - cascading.stats.FlowStepStats

All Implemented Interfaces:
  ProvidesCounters, java.io.Serializable

Direct Known Subclasses:
  BaseCachedStepStats, ProcessStepStats

    public abstract class FlowStepStats
    extends CascadingStats<FlowNodeStats>

Class FlowStepStats collects `FlowStep` specific statistics.

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class cascading.stats.CascadingStats

`CascadingStats.Status, CascadingStats.Type`

### Field Summary

### Fields inherited from class cascading.stats.CascadingStats

`clientState, finishedTime, lastCaptureDetail, listeners, name, pendingTime, runTime, startTime, STATS_COMPLETE_CHILD_DETAILS_BLOCK_DURATION, STATS_STORE_INTERVAL, status, submitTime, throwable, throwableTrace`

### Constructor Summary

Constructors
`protected` `FlowStepStats(FlowStep flowStep, ClientState clientState)`

### Method Summary

Methods
`void` `addNodeStats(FlowNodeStats flowNodeStats)`
`java.util.Collection<FlowNodeStats>` `getChildren()` Method getChildren returns any relevant child statistics instances.
`FlowNodeStats` `getChildWith(java.lang.String id)` Method getChildWith returns a child stats instance with the given ID value.
`protected java.util.Collection<java.lang.String>` `getFlowNodeIDs()`
`java.util.List<FlowNodeStats>` `getFlowNodeStats()`
`protected java.util.Map<java.lang.String,FlowNodeStats>` `getFlowNodeStatsMap()`
`FlowStep` `getFlowStep()`
`java.lang.String` `getID()` Method getID returns the ID of this CascadingStats object.
`int` `getNodesCount()`
`protected ProcessLogger` `getProcessLogger()`
`java.lang.String` `getProcessStatusURL()`
`abstract java.lang.String` `getProcessStepID()` Method getProcessStepID returns the ID representing the under platform process.
`CascadingStats.Type` `getType()`
`boolean` `hasCapturedFinalDetail()`
`abstract void` `recordChildStats()` An internal method that will refresh current counters and, if a clientState client is enabled, the child details including node and slice statistics.
`void` `recordInfo()`
`java.lang.String` `toString()`

### Methods inherited from class cascading.stats.CascadingStats

`addListener, captureDetail, captureDetail, cleanup, fireListeners, getCounterGroupsMatching, getCountersFor, getCurrentDuration, getDuration, getFinishedTime, getName, getPendingTime, getPrefix, getRunTime, getStartTime, getStatsString, getStatus, getSubmitTime, getThrowable, getThrowableTrace, isDetailStale, isEngaged, isFailed, isFinished, isPending, isRunning, isSkipped, isStarted, isStopped, isSubmitted, isSuccessful, logDebug, logError, logError, logInfo, logWarn, markDetailCaptured, markFailed, markFailed, markFailed, markFailed, markFinishedTime, markPending, markPendingTime, markRunning, markRunTime, markSkipped, markStarted, markStartedThenRunning, markStartTime, markStartToRunTime, markStopped, markSubmitted, markSubmitTime, markSuccessful, prepare, recordStats, removeListener, setStatsStoreInterval`

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

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

### Methods inherited from interface cascading.stats.ProvidesCounters

`getCounterGroups, getCountersFor, getCounterValue, getCounterValue, getLastSuccessfulCounterFetchTime`

### Constructor Detail

#### FlowStepStats

    protected FlowStepStats(FlowStep flowStep,
                 ClientState clientState)

### Method Detail

#### getProcessLogger

    protected ProcessLogger getProcessLogger()

Specified by:
  `getProcessLogger` in class `CascadingStats<FlowNodeStats>`

#### getID

    public java.lang.String getID()

Description copied from class: `CascadingStats`
Method getID returns the ID of this CascadingStats object.

Specified by:
  `getID` in class `CascadingStats<FlowNodeStats>`
Returns:
  the ID (type Object) of this CascadingStats object.

#### getType

    public CascadingStats.Type getType()

Specified by:
  `getType` in class `CascadingStats<FlowNodeStats>`

#### getFlowStep

    public FlowStep getFlowStep()

#### addNodeStats

    public void addNodeStats(FlowNodeStats flowNodeStats)

#### getFlowNodeStatsMap

    protected java.util.Map<java.lang.String,FlowNodeStats> getFlowNodeStatsMap()

#### getFlowNodeStats

    public java.util.List<FlowNodeStats> getFlowNodeStats()

#### getNodesCount

    public int getNodesCount()

#### getFlowNodeIDs

    protected java.util.Collection<java.lang.String> getFlowNodeIDs()

#### getChildren

    public java.util.Collection<FlowNodeStats> getChildren()

Description copied from class: `CascadingStats`
Method getChildren returns any relevant child statistics instances. They may not be of type CascadingStats, but instead platform specific.

Specified by:
  `getChildren` in class `CascadingStats<FlowNodeStats>`
Returns:
  a Collection of child statistics

#### getChildWith

    public FlowNodeStats getChildWith(java.lang.String id)

Description copied from class: `CascadingStats`
Method getChildWith returns a child stats instance with the given ID value.

Specified by:
  `getChildWith` in class `CascadingStats<FlowNodeStats>`
Parameters:
  `id` - the id of a child instance
Returns:
  the child stats instance or null if not found

#### recordInfo

    public void recordInfo()

Specified by:
  `recordInfo` in class `CascadingStats<FlowNodeStats>`

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `CascadingStats<FlowNodeStats>`

#### hasCapturedFinalDetail

    public boolean hasCapturedFinalDetail()

#### recordChildStats

    public abstract void recordChildStats()

An internal method that will refresh current counters and, if a clientState client is enabled, the child details including node and slice statistics.

All results will be then recorded by the clientState implementation.

See `CascadingStats.captureDetail()` to force all statistics to be cached and locally accessible.

#### getProcessStepID

    public abstract java.lang.String getProcessStepID()

Method getProcessStepID returns the ID representing the under platform process.

A FlowStep represents a unit of work on a remote platform, in the case of MapReduce, a MapReduce job. The step ID would be the job id.

Returns:
  a String or null if unavailable

#### getProcessStatusURL

    public java.lang.String getProcessStatusURL()