org.apache.ignite.streamer

## Interface StreamerMetrics

All Known Implementing Classes:
  StreamerMetricsAdapter, StreamerMetricsHolder

    public interface StreamerMetrics

Streamer metrics.

### Method Summary

Methods
`int` `currentActiveSessions()` Gets number of current active sessions.
`int` `executorServiceCapacity()` Gets maximum number of threads in executor service.
`int` `failuresCount()` Gets number of failures.
`int` `maximumActiveSessions()` Gets maximum number of active sessions since last reset.
`int` `pipelineAverageExecutionNodes()` Gets average number of unique nodes participated in pipeline execution.
`long` `pipelineAverageExecutionTime()` Gets pipeline average execution time, i.e. time between execution start and time when last stage in pipeline returned empty map.
`int` `pipelineMaximumExecutionNodes()` Gets maximum number of unique nodes participated in pipeline execution.
`long` `pipelineMaximumExecutionTime()` Gets pipeline maximum execution time, i.e. time between execution start and time when last stage in pipeline returned empty map.
`int` `pipelineMinimumExecutionNodes()` Gets minimum number of unique nodes participated in pipeline execution.
`long` `pipelineMinimumExecutionTime()` Gets pipeline minimum execution time, i.e. time between execution start and time when last stage in pipeline returned empty map.
`int` `queryAverageExecutionNodes()` Gets average number of unique nodes participated in query execution.
`long` `queryAverageExecutionTime()` Gets query average execution time.
`int` `queryMaximumExecutionNodes()` Gets maximum number of unique nodes participated in query execution.
`long` `queryMaximumExecutionTime()` Gets query maximum execution time.
`int` `queryMinimumExecutionNodes()` Gets minimum number of unique nodes participated in query execution.
`long` `queryMinimumExecutionTime()` Gets query minimum execution time.
`int` `stageActiveExecutionCount()` Gets number of stages currently being executed in streamer pool.
`Collection<StreamerStageMetrics>` `stageMetrics()` Gets metrics for all stages.
`StreamerStageMetrics` `stageMetrics(String stageName)` Gets current stage metrics, if stage with given name is not configured then `IllegalArgumentException` will be thrown.
`long` `stageTotalExecutionCount()` Gets total number of stages executed since last reset.
`int` `stageWaitingExecutionCount()` Gets number of event batches currently waiting to be executed.
`Collection<StreamerWindowMetrics>` `windowMetrics()` Gets metrics for all windows.
`StreamerWindowMetrics` `windowMetrics(String winName)` Gets current window metrics, if window with given name is not configured then `IllegalArgumentException` will be thrown.

### Method Detail

#### stageActiveExecutionCount

    int stageActiveExecutionCount()

Gets number of stages currently being executed in streamer pool.

Returns:
  Number of stages. Cannot be more than pool thread count.

#### stageWaitingExecutionCount

    int stageWaitingExecutionCount()

Gets number of event batches currently waiting to be executed.

Returns:
  Number of event batches waiting to be processed.

#### stageTotalExecutionCount

    long stageTotalExecutionCount()

Gets total number of stages executed since last reset.

Returns:
  Total number of stages executed since last reset.

#### pipelineMaximumExecutionTime

    long pipelineMaximumExecutionTime()

Gets pipeline maximum execution time, i.e. time between execution start and time when last stage in pipeline returned empty map. If pipeline execution was split to different nodes, metrics for each split will be recorded independently.

Returns:
  Pipeline maximum execution time.

#### pipelineMinimumExecutionTime

    long pipelineMinimumExecutionTime()

Gets pipeline minimum execution time, i.e. time between execution start and time when last stage in pipeline returned empty map. If pipeline execution was split to different nodes, metrics for each split will be recorded independently.

Returns:
  Pipeline minimum execution time.

#### pipelineAverageExecutionTime

    long pipelineAverageExecutionTime()

Gets pipeline average execution time, i.e. time between execution start and time when last stage in pipeline returned empty map. If pipeline execution was split, metrics for each split will be recorded independently.

Returns:
  Pipeline average execution time.

#### pipelineMaximumExecutionNodes

    int pipelineMaximumExecutionNodes()

Gets maximum number of unique nodes participated in pipeline execution. If pipeline execution was split, metrics for each split will be recorded independently.

Returns:
  Maximum number of unique nodes in pipeline execution.

#### pipelineMinimumExecutionNodes

    int pipelineMinimumExecutionNodes()

Gets minimum number of unique nodes participated in pipeline execution. If pipeline execution was split, metrics for each split will be recorded independently.

Returns:
  Minimum number of unique nodes in pipeline execution.

#### pipelineAverageExecutionNodes

    int pipelineAverageExecutionNodes()

Gets average number of unique nodes participated in pipeline execution. If pipeline execution was split, metrics for each split will be recorded independently.

Returns:
  Average number of unique nodes in pipeline execution.

#### queryMaximumExecutionTime

    long queryMaximumExecutionTime()

Gets query maximum execution time. If query execution was split to different nodes, metrics for each split will be recorded independently.

Returns:
  Query maximum execution time.

#### queryMinimumExecutionTime

    long queryMinimumExecutionTime()

Gets query minimum execution time. If query execution was split to different nodes, metrics for each split will be recorded independently.

Returns:
  Query minimum execution time.

#### queryAverageExecutionTime

    long queryAverageExecutionTime()

Gets query average execution time. If query execution was split to different nodes, metrics for each split will be recorded independently.

Returns:
  Query average execution time.

#### queryMaximumExecutionNodes

    int queryMaximumExecutionNodes()

Gets maximum number of unique nodes participated in query execution. If query execution was split, metrics for each split will be recorded independently.

Returns:
  Maximum number of unique nodes in query execution.

#### queryMinimumExecutionNodes

    int queryMinimumExecutionNodes()

Gets minimum number of unique nodes participated in query execution. If query execution was split, metrics for each split will be recorded independently.

Returns:
  Minimum number of unique nodes in query execution.

#### queryAverageExecutionNodes

    int queryAverageExecutionNodes()

Gets average number of unique nodes participated in query execution. If query execution was split, metrics for each split will be recorded independently.

Returns:
  Average number of unique nodes in query execution.

#### currentActiveSessions

    int currentActiveSessions()

Gets number of current active sessions. Since event execution sessions are tracked only when `atLeastOnce` configuration property is set to `true`, this metric will be collected only in this case. When `atLeastOnce` is set to `false`, this metric will always be zero.

Returns:
  Number of current active sessions.

#### maximumActiveSessions

    int maximumActiveSessions()

Gets maximum number of active sessions since last reset. Since event execution sessions are tracked only when `atLeastOnce` configuration property is set to `true`, this metric will be collected only in this case. When `atLeastOnce` is set to `false`, this metric will always be zero.

Returns:
  Maximum active sessions since last reset.

#### failuresCount

    int failuresCount()

Gets number of failures. If `atLeastOnce` flag is set to steamer configuration, then only root node failures will be counted. Otherwise each node will count failures independently.

Returns:
  Failures count.

#### executorServiceCapacity

    int executorServiceCapacity()

Gets maximum number of threads in executor service.

Returns:
  Maximum number of threads in executor service.

#### stageMetrics

    StreamerStageMetrics stageMetrics(String stageName)

Gets current stage metrics, if stage with given name is not configured then `IllegalArgumentException` will be thrown.

Parameters:
  `stageName` - Stage name.
Returns:
  Stage metrics.

#### stageMetrics

    Collection<StreamerStageMetrics> stageMetrics()

Gets metrics for all stages. Stage metrics order is the same as stage order in configuration.

Returns:
  Stage metrics collection.

#### windowMetrics

    StreamerWindowMetrics windowMetrics(String winName)

Gets current window metrics, if window with given name is not configured then `IllegalArgumentException` will be thrown.

Parameters:
  `winName` - Window name.
Returns:
  Window metrics.

#### windowMetrics

    Collection<StreamerWindowMetrics> windowMetrics()

Gets metrics for all windows.

Returns:
  Collection of window metrics.

2015 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 1.0.0-RC1
Release Date | : February 17 2015